System.Runtime.Serialization在使用ReflectionOnly API时,必须预加载或加载相关程序集。

4
为什么会出现这个错误?
 Error  12  Unknown build error, 
'Cannot resolve dependency to assembly 'System.Runtime.Serialization, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes' 
because it has not been preloaded. When using the ReflectionOnly APIs, 
dependent assemblies must be pre-loaded or loaded on demand through the    
ReflectionOnlyAssemblyResolve event.'   WpfApp

2
你好!看一下这个 - Hamlet Hakobyan
2个回答

8
这个错误意味着你所使用的项目库之一,依赖于 .Net Framework 的 System.Runtime.Serialization 组件。
当你尝试构建项目时,它在解析 XAML 部分中加载库程序集 (使用反射) 时失败了,但是 .Net Framework 的依赖关系尚未加载 (也可以参考这个答案)。
最简单的解决方法是直接将 System.Runtime.Serialization 组件添加到你的 WPF 项目引用中。

Gamze的问题和@meldim的答案今天仍然很有价值。 - Patrice Calvé

2
基本上就是它所说的。
看起来你正在尝试反序列化一个对象,但其中一个依赖对象所依赖的DLL尚未加载。
我在使用ASP.NET应用程序中的依赖注入时遇到了类似的问题,解决方案是明确加载bin目录中的所有DLL。在我的情况下,我使用System.IO类获取目录中的文件列表,然后显式地加载每个DLL。
请参阅此问题以了解如何加载DLL:C#中运行时加载DLL

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接