.XmlSerializers.dll未加载

时间:2012-04-26 23:06:19

标签: c# serialization

我有一个c#BHO taht使用CML序列化。为了避免IT提示csc.exe生成序列化程序集,我使用sgen创建了My.App.XmlSerializers.dll作为构建的一部分。但My.App.dll失败了很多负载My.App.XmlSerializers.dll:

LOADED ASSEMBLIES:
My.App, Version=1.0.0.0, Culture=neutral, PublicKeyToken=615a444ac04be6dd

FirstChanceException event raised in DefaultDomain: Could not load file or assembly 'My.App.XmlSerializers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=615a444ac04be6dd' or one of its dependencies. The system cannot find the file specified. - C:\MyPath\bin\Debug\My.App.dll

我做了很多研究,我已经证实了这一点:

  • 两个DLL都在同一个文件夹中
  • 两个DLL都使用相同的强密钥签名

我不明白为什么找不到My.App.XmlSerializers.dll或者没有找到正确的loadec。

1 个答案:

答案 0 :(得分:0)

此链接将为您提供解决方案: What is MyAssembly.XmlSerializers.dll generated for? 您有3个选择:

  1. 更改构建选项:GenerateSerializationAssemblies为Off
  2. 将“程序集名称”重命名为与项目属性“应用程序”选项卡中的“默认名称空间”相同
  3. 使用AppDomain.CurrentDomain.AssemblyResolve事件,您可以在此处找到示例:how to update assemblyBinding section in config file at runtime?