Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说XmlSerializer FileNotFoundException,希望能够帮助你!!!。
这是正常行为。XmlSerializer 的构造函数首先尝试查找名为 [YourAssembly].XmlSerializers.dll 的程序集,该程序集应包含生成的用于序列化类型的类。由于尚未生成这样的 DLL(默认情况下它们不是),因此抛出 FileNotFoundException。发生这种情况时,XmlSerializer 的构造函数会捕获该异常,并且 XmlSerializer 的构造函数会在运行时自动生成 DLL(这是通过在计算机的 %temp% 目录中生成 C# 源文件,然后使用 C# 编译器编译它们来完成的)。相同类型的 XmlSerializer 的其他构造将仅使用已生成的 DLL。
更新:从 .NET 4.5 开始,
XmlSerializer
不再执行代码生成,也不再使用 C# 编译器执行编译以在运行时创建序列化程序集,除非通过设置配置文件设置(useLegacySerializerGeneration)明确强制执行。此更改消除了对csc.exe
启动性能的依赖并提高了启动性能。来源:.NET Framework 4.5 自述文件,第 1.3.8.1 节。
该异常由 XmlSerializer 的构造函数处理。无需自己做任何事情,您只需单击“继续”(F5)即可继续执行您的程序,一切都会好起来的。如果您对停止执行程序并弹出异常帮助程序的异常感到困扰,您可以关闭“仅我的代码”,或者将 FileNotFoundException 设置为在抛出时中断执行,而不是在“用户”未处理'。
要启用“仅我的代码”,请转到工具>>选项>>调试>>常规>>启用仅我的代码。要在抛出 FileNotFound 时关闭执行中断,请转到调试 >> 异常 >> 查找 >> 输入 'FileNotFoundException' >> 取消选中 System.IO.FileNotFoundException 中的 'Thrown' 复选框。
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
上一篇
已是最后文章
下一篇
已是最新文章