当我在数据库中进行更改(添加,删除,重命名列)并且不更新我的data1 = {"00:08:22:24:f8:02":
{"cities" :
[
{'name': 'Bhubaneswar', 'count': 12, 'date':14/05/2016},
{'name': 'Kolkata', 'count': 4, 'date': 15/05/2016},
{'name': 'Mumbai', 'count': 6, 'date' : 16/04/2016}
]}
}
映射时,我在调试模式下出现异常
System.Data.Entity.Core.EntityCommandExecutionException
但是我没有看到这个异常在全局EF
中被捕获,即使我从发生异常的代码中捕获并抛出它也是如此。是什么原因?基本上我想在我的应用程序加载时验证我的DispatcherUnhandledException
映射,如果映射中存在任何不匹配,我想向用户显示一条友好的消息客户端应用程序需要更新。
答案 0 :(得分:1)
一个选项是创建一个命令拦截器。这个概念是在Entity Framework 6.0中引入的。
通过实现IDbCommandInterceptor接口创建拦截器,然后通过代码或配置注册它。
http://www.tutorialspoint.com/entity_framework/entity_framework_command_interception.htm
http://www.entityframeworktutorial.net/entityframework6/database-command-interception.aspx