I have a sgen step in my .NET 3.5 library, producing a correct XYZ.XmlSerializers.dll in the output directory. Still having poor serialization performance, I discovered that .NET w开发者_StackOverflow中文版as still invoking a csc at runtime. Using process monitor, I saw that .NET was searching for a dll named "XYZ.XmlSerializers.-1378521009.dll".
Why is there a '-1378521009' in the filename ? How to tell .NET to use the 'normal' DLL produced by sgen ?
Poking around a bit with Reflector, this seems to happen when you use the XmlSerializer(Type, string) constructor, specifying a custom namespace. Try using the XmlSerializer(Type) constructor instead.
精彩评论