1

我正在为自定义类实例化 XmlSerializer。这行代码非常简单:

mySerializer = new XmlSerializer(typeof(myClass));

我最近在 Visual Studio 2017 的“异常设置”窗口中为所有“C++ 异常”打开了“抛出时中断”选项,现在在执行此行时会出现几个异常。我还可以在“输出”窗口中看到,这一行连续抛出 6 个异常:

Exception thrown at 0x7565C5AF in myWinFormsApp.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x003BC7BC.
Exception thrown at 0x7565C5AF in myWinFormsApp.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000.
Exception thrown at 0x7565C5AF in myWinFormsApp.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000.
Exception thrown at 0x7565C5AF in myWinFormsApp.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x003BC6DC.
Exception thrown at 0x7565C5AF in myWinFormsApp.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000.
Exception thrown at 0x7565C5AF in myWinFormsApp.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000.

奇怪的是,这些异常并没有被try...catch块捕获,不中断程序执行流程,后续代码正确序列化和反序列化myClass。

我能想到的唯一不寻常的事情是我在 .NET Framework 4.6.1 项目中实例化了 XmlSerializer,而“myClass”是在 .NET Standard 2.0 项目中定义的。

这可能是什么原因造成的?当我将代码移动到 24/7 生产环境时,我应该担心什么吗?谢谢!

4

0 回答 0