我成功地使用sgen.exe创建了MyLibrary.XmlSerializer.dll程序集,因为我希望避免“第一次”反序列化浪费时间。
但是现在,如何使用它呢?
我的意思是,我要把MyLibrary.XmlSerializer.dll放在哪里才能被使用?如何确定?
谢谢!
发布于 2014-04-07 09:55:22
只要将它放在与您的MyLibrary.dll相同的文件夹中,如果它与您的MyLibrary.dll匹配,就会自动使用它(例如,如果它过时了,则不会使用它,您的库的每一个新构建都需要一个新的sgen运行)。
您可以检查它是否装载了外部工具,如。在Process中,打开进程的属性窗口并检查".NET程序集“选项卡。如果加载了MyLibrary.XmlSerializer.dll,就会在那里列出它。
但是要小心:如果它已经过时,它也会显示为已加载的(当然,否则它无法检查它是否过时)。如果为XML序列化创建临时程序集,也将在其中显示该程序集。通常它有一个随机名称(如"uki54k3f"),并且不显示路径。因此,如果在创建XmlSerializer实例后,程序集列表中有这样一个随机名称,则表示不使用Sgen程序集。
https://stackoverflow.com/questions/22906860
复制相似问题