4

我决定在 VS2012 中使用动态数据实体网站。

所以,我创建了这个网站,然后添加了App_Code目录并添加了一个新edmx的并将其命名为myDB.edmx. 之后,我取消了Global.asax注册实体上下文的代码行的注释:

DefaultModel.RegisterContext(typeof(myDBEntities), new ContextConfiguration() { ScaffoldAllTables = true });

但是当我运行该网站时,会发生此错误:

The context type 'myDBEntities' is not supported.

我该如何解决?

Dynamic Data L2S Web Siteps:您现在使用 L2S和使用 Entity Framework之间存在一些差异Dynamic Data Entities Web Site

4

4 回答 4

5

我仍在寻找原因,但目前唯一的选择是在 VS2010 中创建项目,然后将项目迁移到 VS2012 中,然后运行应用程序没有任何问题

于 2012-11-07T14:38:48.923 回答
2

发生此问题是因为在 Visual Studio 2012 中,您会获得DbContext(而不是ObjectContext在 Visual Studio 2010 中)默认为使用 EF 设计器创建的所有新模型生成的代码。为了解决一个问题,您需要恢复ObjectContext代码生成。

有关详细信息,请参阅在 EF 设计器中恢复到 ObjectContext

于 2013-05-19T06:45:16.650 回答
0

在 Global.asax 文件中,取消注释其他 RegisterContext 行。

 DefaultModel.RegisterContext( _
           New System.Func(Of Object)(Function() DirectCast(New [Your edmx](), IObjectContextAdapter).ObjectContext), _
           New ContextConfiguration() With {.ScaffoldAllTables = True} _
         )
于 2017-06-24T21:46:39.447 回答
0
  1. 从模型中删除 TT 文件

  2. 将“代码生成策略”更改为“默认”

于 2016-02-12T19:38:13.567 回答