相关疑难解决方法(0)

XmlSerializer在构造函数中给出FileNotFoundException

当我尝试序列化类型时,我一直在使用的应用程序失败.

像这样的陈述

XmlSerializer lizer = new XmlSerializer(typeof(MyType));
Run Code Online (Sandbox Code Playgroud)

生产:

System.IO.FileNotFoundException occurred
  Message="Could not load file or assembly '[Containing Assembly of MyType].XmlSerializers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified."
  Source="mscorlib"
  FileName="[Containing Assembly of MyType].XmlSerializers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
  FusionLog=""
  StackTrace:
       at System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
       at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
Run Code Online (Sandbox Code Playgroud)

我没有为我的班级定义任何特殊的序列化器.

我该如何解决这个问题?

c# xml-serialization

340
推荐指数
9
解决办法
12万
查看次数

C#XmlSerializer BindingFailure

我使用XmlSerializer在一行代码上得到一个BindingFailure:

XmlSerializer s = new XmlSerializer(typeof(CustomXMLSerializeObject));
Run Code Online (Sandbox Code Playgroud)

具有显示名称CustomXMLSerializeObject.XmlSerializers'的程序集无法加载到ID为1的AppDomain的"LoadFrom"绑定上下文中.失败的原因是:System.IO.FileNotFoundException:无法加载文件或程序集XMLSerializeObject.XmlSerializers,Version = 1.4.0.0,Culture = neutral,PublicKeyToken = null'或其依赖项之一.该系统找不到指定的文件.

错误很长,继续解释预绑定状态信息以及它试图找到文件的位置.

我试图去序列化的自定义对象相对简单 - 只是一堆私有整数和具有公共访问器的字符串.我有一个私有变量,它是另一个自定义的可序列化类,但它只有私有字符串,其中包含公共访问器.

尴尬的部分?这只在我反序列化时发生.当我序列化对象时,那行代码运行正常.它工作正常,对象被反序列化并完美填充.不要注意任何性能损失或加载时间过长.

这个警告究竟是什么(不是错误或异常,之后程序运行良好)?为什么会这样?如何在不简单禁用警告的情况下阻止它?

.net c# visual-studio-2008 xmlserializer

46
推荐指数
2
解决办法
3万
查看次数

mscorlib.XmlSerializers.DLL的FileNotFoundException,它不存在

我正在使用XmlSerializer来反序列化mscorelib.dll中的特定类型

XmlSerializer ser = new XmlSerializer( typeof( [.Net type in System] ) );
return ([.Net type in System]) ser.Deserialize( new StringReader( xmlValue ) );
Run Code Online (Sandbox Code Playgroud)

这会FileNotFoundException在加载程序集时抛出一个catch :

"无法加载文件或程序集'mscorlib.XmlSerializers,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'或其中一个依赖项.系统找不到指定的文件."

FusionLog:

=== Pre-bind state information ===
LOG: User = ###
LOG: DisplayName = mscorlib.XmlSerializers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=x86
 (Fully-specified)
LOG: Appbase = file:///C:/localdir
LOG: Initial PrivatePath = NULL
Calling assembly : System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089.
===
LOG: This bind starts in default load context.
LOG: …
Run Code Online (Sandbox Code Playgroud)

.net c# serialization assemblies

12
推荐指数
1
解决办法
2万
查看次数