如何从sgen.exe获得优势

时间:2014-04-07 08:09:57

标签: c# .net serialization deserialization sgen

我成功使用sgen.exe来创建我的MyLibrary.XmlSerializer.dll程序集,因为我想避免浪费时间进行“第一次”反序列化。

但是现在,如何使用它?

我的意思是,我必须在哪里使用MyLibrary.XmlSerializer.dll?怎么样?

谢谢!

1 个答案:

答案 0 :(得分:1)

只需将其放在与MyLibrary.dll相同的文件夹中,如果它与您的MyLibrary.dll匹配,它将自动被使用(例如,如果它已过时,它将被使用,每个新的您的库的构建需要一个新的sgen运行。)

您可以检查它是否已使用Process Explorer等外部工具加载。在Process Explorer中,打开进程的属性窗口并检查" .NET程序集"标签。如果加载了MyLibrary.XmlSerializer.dll将会在那里列出。

但要小心:如果它已经过时,它也会显示为已加载(当然,否则它无法检查它是否已过期)。如果为XML序列化创建了临时程序集,那么也会在那里显示该程序集。通常它有一个随机名称(例如" uki54k3f")并且没有显示路径。因此,如果在创建XmlSerializer实例后在汇编列表中有这样的随机名称,则表明您的Sgen汇编未被使用。