我正在使用 EF 6.3 和 .NET Framework 4.5.1 开发 WinForms 应用程序。该应用程序编译为 X86 并在不同的 Win10 x64 机器上运行。
XmlException
应用程序间歇性地抛出一个。包含 EF 的源代码后,我将其固定为:
System.Data.Entity.Core.Metadata.Edm.MetadataArtifactLoaderResource:
private bool TryCreateResourceStream(out Stream resourceStream)
{
resourceStream = _assembly.GetManifestResourceStream(_resourceName);
return resourceStream != null;
}
由于某些奇怪的原因,csdl 的嵌入式资源被破坏了。
例如,标签 Name 将替换为 Namey,后跟一些不可打印的字符。
重新启动后,应用程序将按预期工作。有时使用可以毫无问题地工作一整天,有时甚至重新启动也无济于事,必须第三次进行。
在环境环境中,我可以重现该问题,但可能需要启动 20 次调试会话。
我无法弄清楚哪个进程损坏了GetManifestResourceStream
.
有任何想法吗?