4

first-chance exceptions启用 in 后VS2010,第一次调用时会收到以下消息EntityFramework's SaveChanges()。这是一个WinForms运行MSSQL CE 4数据库的应用程序。

BindingFailure显示名称为“Microsoft.SqlServer.Types”的程序集未能在 ID 为 1 的 AppDomain 的“加载”绑定上下文中加载。失败的原因是:System.IO.FileLoadException:无法加载文件或程序集“ Microsoft.SqlServer.Types,Version=11.0.0.0,Culture=neutral,PublicKeyToken=89845dcd8080cc91' 或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。

继续后,还会显示此消息:

FileLoadException 无法加载文件或程序集“Microsoft.SqlServer.Types,Version=11.0.0.0,Culture=neutral,PublicKeyToken=89845dcd8080cc91”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)

我已将其包含Microsoft.SqlServer.Types.dll在项目中。

我知道这是第一次机会异常,并且在我调试时它似乎不会影响通知之外的应用程序,但我还是想修复它。(它在我的脑海里困扰着我。)

首先,这条错误消息试图告诉我什么?

其次,我该如何解决?

4

2 回答 2

3

如果您使用的是空间类型,EF 需要探测 AppDomain 中加载了哪些 SqlType 以绑定到它,以便在与 SqlServer 通信时使用它。是执行此操作的代码。如果您查看该BindToLatest()方法,您将看到该异常是否实际被捕获并忽略。您只能在调试时看到它,因为您可能选中了“抛出异常时中断”选项(调试 -> 异常,公共语言运行时异常,“抛出”列)

于 2013-10-30T19:28:27.710 回答
0

第一次机会异常不是要修复的问题。如果处理了异常,则不会对您的代码产生影响。

您需要担心的是未处理的异常。

于 2013-10-30T19:39:46.103 回答