answersLogoWhite

0

The XmlSerializer constructor will generate a pair of classes derived from XmlSerializationReader and XmlSerializationWriter by analyzing the your class using reflection. It will create temporary C# files, compile the resulting files into a temporary assembly, and finally load that assembly into the process. Code gen like this is also relatively expensive. So the XmlSerializer caches the temporary assemblies on a per-type basis. This means that the next time an XmlSerializer for the your class is created, the cached assembly is used rather than a new one generated. For more details please refer "Leaking Unmanaged Heap Memory" secton of http://msdn.microsoft.com/en-us/magazine/cc163491.aspx. Hence the XmlSerialize will require full permissions (read/write/delete) on the temporary directory. This directory is the user profile temp directory for windows applications and the app specific folder under Temporary ASP.NET Files (in the framework directory) for ASP.NET applications

Regards,

Parag Kulkarni,

Symantec

User Avatar

Wiki User

16y ago

What else can I help you with?