3

使用 EF Code First 时,VS 2012 中的 WCF RIA 服务向导(在添加新的 DomainService 时运行)似乎无法识别项目中定义的 DbContexts(它只识别 ObjectContext)。

这意味着当在 VS2012 中添加新项目并选择添加 DomainServiceClass 时,向导无法检测到可用的上下文类 * 组合列表为空 *

请看附图

知道这里会发生什么吗?谢谢,-苏米特请看附图

4

3 回答 3

3

这是 Visual Studio 2012、WCF RIA 服务和实体框架的一个已知问题,导致创建新域服务的向导不知道 DbContext 类型。

简单的解决方案是继续使用 Visual Studio 2010 创建实体模型。尽管使用 RIAServices.EntityFramework NuGet 包不起作用,因为它不支持当前版本的实体框架。

另一种解决方案是将 Context 的类型从 更改DbContextObjectContext

还有针对该特定场景的知识库文章。

更新: 发布了对 WCF Ria 服务的更新以支持 EF 5 和 DbContext 的使用。更多信息可以在这里找到。

于 2012-10-22T09:43:54.900 回答
0

这现在可以通过 WCF RIA 服务 4.2 版本实现。

如果您创建 WCF RIA 项目并收到提示选择 Windows Phone 版本,这是一个报告的问题,您需要删除 Windows Phone 8.0 和 7.1 SDK。

如果您遇到与项目模板有关的错误,请在您应该已经安装的 WCF RIA 1.0 SP2 上执行修复。

于 2013-03-12T12:28:33.090 回答
0

我相信由于 WCF ria 早于 EF 5,因此该向导找不到您的课程。尝试将程序集绑定重定向到

<runtime>
    <legacyUnhandledExceptionPolicy enabled="1" />
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
      </dependentAssembly>
...

让我们知道它是否有效

于 2012-10-12T07:14:04.287 回答