[英]ContextCreating method in EntityDataSource cannot convert Entities to ObjectContext
使用EntityFramework,我在App_Code \\ DAL中创建了一个EntityDataModel(.edmx文件)。 在向导中,我将实体命名为“ DLGDBEntities”。 我在.aspx中有许多EntityDataSource
,在其中我已将OnContextCreating
属性设置为'UseSurveyContext',如下所示:
protected void UseSurveyContext(object sender, EntityDataSourceContextCreatingEventArgs e)
{
e.Context = surveyContext;
}
SurveyContext的设置代码如下:
DLGDBEntities surveyContext;
并在Page_Load中:
surveyContext = new DLGDBEntities();
以上所有内容看起来都与我在每个教程中看到的代码相同(例如: http : //msdn.microsoft.com/en-us/library/cc668193.aspx#1 ),我可以发誓我已经拥有过它工作。
但是,现在出现错误: Cannot implicitly convert type 'DAL.DLGDBEntities' to 'System.Data.Objects.ObjectContext'
我做错了什么?为什么以前做过?
EntityDataSource控件仅适用于ObjectContext。 您可以使用((IObjectContextAdapter)context).ObjectContext
从DbContext获取ObjectContext。 请注意,在Visual Studio 2012中,默认代码生成器已更改为生成POCO实体和DBContext,而与从EntityObject和ObjectContext派生的实体相反,后者是Visual Studio 2010中的默认值。
编辑
正如Sven在评论中指出的那样,已发布了与EF6兼容的新版本EntityDataSourceControl,它采用EF6 DbContext实例。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.