我用 XMLSerializer 类做一些事情。像大多数初学者一样,我在应用启动时遇到性能问题。我阅读了很多博客、文章,最后使用了 SGEN 工具。现在性能看起来还不错,但对我来说仍然有几件事不清楚。
1)我应该像这样使用 SGEN 语法:
SGen.exe /assembly:MyAssembly /type:MyRootXmlType
或者它就足够了(我目前使用这种语法,我的程序集中只有一个 Serializable 类):
SGen.exe /assembly:MyAssembly
/type 参数在实践中何时有用?
2)我在 MSDN 上阅读(http://msdn.microsoft.com/en-us/library/ee704594.aspx)
此命令生成序列化程序集 MyAssembly.XmlSerializers.dll,应将其添加为对当前项目或 GAC 的引用。
但在所有其他博客和文章(例如 SO)上,我读到足以将 MyAssembly.XmlSerializers.dll 放入 MyAssembly 存在的文件夹中。
那么什么是对的呢?
3) 只生成 .XmlSerilizers.dll 并将其与 MyAssembly 一起部署就足够了,还是我应该在我的代码中添加一些东西?
我不这么认为,但我想确保我不必更改我的代码并且“魔法”会自动发生。