2

我有简单的场景:

  • Web 项目(C#),添加了对以下 DataSource 项目的 dll 引用。
  • 单独的 DataSource 项目(类库),我在其中添加了 edmx 文件并使用 DbContext Generator 生成了 POCO。

真的,没什么特别的。我认为我在 Entity Framework 上看到的每个 youtube 教学视频都在做一些简单的事情。

我发现 EntityDataSource 根本不起作用。我收到一系列错误消息,当它们出现时我真的看不到模式:

以下是一些:
- 无法加载指定的元数据源
- 架构无效并且无法加载类型,因为程序集包含 EdmSchemaAttribute... 不允许同时按名称和属性加载。

几次,不知道如何,我设法通过了这个错误,在这种情况下,当我尝试使用数据源和 gridview 执行简单页面时,我会收到 CLR 错误(没有编码)

结束添加到问题...我以相同的方式引用另一个 DataSource 项目。我完全能够设置此 EntityDataSource 而不会出现上述错误。但是当我单击刷新架构时,我收到错误“找不到 MyEntity 的 CLR 类型。

这里有什么问题。

谢谢

4

1 回答 1

0

我收到 EdmSchemaAttribute 错误消息,使用 EF 5.0 和 WCF Data Services 5.2.0。这是使用DbContext- 派生类的数据服务,但DbContext- 派生类与一些 EDMX 文件和从 EDMX 文件生成的基于 ObjectContext 的代码位于同一程序集中。

对我来说,解决方法是将代码优先的 EF 代码与模型优先的 EF 代码(它使用 ObjectContext 并生成带有[EdmSchema]属性的代码)分开。通过将代码优先代码移动到单独的程序集中,错误消息消失并且一切正常。

我希望这会有所帮助。

于 2013-02-17T07:59:41.447 回答