c# - DbContext 因 PrimitiveType != null 错误而崩溃

标签 c# entity-framework-4

首先使用实体​​框架代码,Web 应用程序在调用 DbContext 时崩溃并出现以下错误:

Assertion failed

Expression: primitiveType != null

Description: Assertion failed: primitiveType != null

它在以下代码行崩溃:

public class MyDb : DbContext {

调用者:

MyDb _db = new MyDb();

所以调用 DbContext 似乎会产生 fatal error 。 DbContext 是一个 EF 函数,我无法在 EntityFramework.dll 中进行调试

最佳答案

这是与 EntityFramework 的旧版本相关的问题。将 Visual Studio 项目复制到另一台机器时有时会发生这种情况。这可能会导致应用程序计算出与数据库中(在 EdmMetaData 表内)不同的 ModelHash。解决方案是删除 EdmMetaData 表并使用 DbDatabase.SetInitializer<MyContext>( new DropCreateDatabaseIfModelChanges<MyContext>());将其放回原位,甚至更好:升级到未使用 EdmMetaData 表和 ModelHashes 的较新版本的 EntityFramework。

关于c# - DbContext 因 PrimitiveType != null 错误而崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10430223/

相关文章:

c# - 在对话框中输出字符串

ASP.NET MVC 3、Entity Framework 4。更新与许多相关的实体

entity-framework-4 - 使用 Entity Framework 同时使用两个不同的数据库

c# - 使用 Entity Framework 4 和 Linq 查询比较 DateTime 属性中的日期的简单方法

c# - Entity Framework 4 Table Per Hierarchy - 如何定义子项的导航属性?

c# - CRM 2011 自定义工作流程从创建的记录触发器访问数据

使用自定义任务的 C# 任务重写功能

c# - 将实体保存到数据库的设计模式

c# - 是什么导致 DriveInfo.IsReady 为假?

c# - 从实体对象获取 ObjectContext 引用的最快方法是什么?