Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 无法强制转换类型为';模型.实体';输入';System.Data.Objects.ObjectContext';_Asp.net Mvc_Asp.net Mvc 3_Entity Framework - Fatal编程技术网

Asp.net mvc 无法强制转换类型为';模型.实体';输入';System.Data.Objects.ObjectContext';

Asp.net mvc 无法强制转换类型为';模型.实体';输入';System.Data.Objects.ObjectContext';,asp.net-mvc,asp.net-mvc-3,entity-framework,Asp.net Mvc,Asp.net Mvc 3,Entity Framework,MVC3 EF5。它运转得很好。但当我从数据库更新模型时,构建成功了,但我在最后一行得到了上面的异常。当我最后一次从数据库中更新时,它是2-3个月前的事了,而且还不错 public static ObjectContext GetContext() { Assembly testAssembly = Assembly.GetExecutingAssembly(); Type calcType = testAssembly.GetType("Model.Entities")

MVC3 EF5。它运转得很好。但当我从数据库更新模型时,构建成功了,但我在最后一行得到了上面的异常。当我最后一次从数据库中更新时,它是2-3个月前的事了,而且还不错

 public static ObjectContext GetContext()
 {
     Assembly testAssembly = Assembly.GetExecutingAssembly();
     Type calcType = testAssembly.GetType("Model.Entities");
     return (ObjectContext)Activator.CreateInstance(calcType);
 }

实体框架的较新版本提供了
DbContext
,与错误所述的
ObjectContext
相反,您不能将
模型。实体
强制转换为
ObjectContext
。不清楚你想做什么,所以很难说得更多。我接管了这个项目。我也不知道。当我从数据库更新时,向导的最后一步说“您的项目引用了旧版本的EntityFramework”。有意义吗?听起来您需要对应用程序进行更多的研究,并找出代码中应该发生的事情。断章取义,毫无意义。我真正想知道的是,除非从数据库更新模型,否则它如何工作良好。看起来EF是在不更新模型的情况下升级的。现在,当您更新模型时,将创建一个
DbContext
。如果您创建并返回一个
DbContext
,也许您就可以了。然而,首先返回
ObjectContext
(或
DbContext
)确实很奇怪。在EF中,您应该创建继承自
DbContext
的上下文类,它看起来像
Model.Entities
就是其中之一。
 Assembly testAssembly = Assembly.GetExecutingAssembly();
 Type calcType = testAssembly.GetType("Model.Entities");
 var entities = (DbContext)(Activator.CreateInstance(calcType));
 return ((IObjectContextAdapter)entities).ObjectContext;