Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/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
.net 使用WCF数据服务5.6.0和实体框架6+;_.net_Wcf_Odata_Entity Framework 6 - Fatal编程技术网

.net 使用WCF数据服务5.6.0和实体框架6+;

.net 使用WCF数据服务5.6.0和实体框架6+;,.net,wcf,odata,entity-framework-6,.net,Wcf,Odata,Entity Framework 6,我一直在尝试让我们的WCF数据服务与新的Entity Framework 6协同工作 我发现了这一点,这解释了一种据称简单、无痛的方法来解决这个问题 我严格按照张贴的指示去做。第一次安装时: Install-Package Microsoft.OData.EntityFrameworkProvider -Version 1.0.0-alpha1 -Pre 我得到一个错误: 错误16类型错误 在程序集中定义了Microsoft.OData.Service.DataService“1” 这是没有参

我一直在尝试让我们的WCF数据服务与新的Entity Framework 6协同工作

我发现了这一点,这解释了一种据称简单、无痛的方法来解决这个问题

我严格按照张贴的指示去做。第一次安装时:

Install-Package Microsoft.OData.EntityFrameworkProvider -Version 1.0.0-alpha1 -Pre
我得到一个错误:

错误16类型错误 在程序集中定义了Microsoft.OData.Service.DataService“1” 这是没有参考的。必须添加对程序集的引用 'Microsoft.OData.Service,版本=5.6.0.0,区域性=中性, PublicKeyToken=31bf3856ad364e35'。C:\Realtime Source\RTR 6.x\RTRServices\RTRWCFDataService\RTRWCFDataService\RTRWCFData.svc.cs 21 16 RTRWCFDataService

经研究,似乎解决方案是升级到阿尔法2。。。要执行此操作,请使用以下命令:

Install-Package Microsoft.OData.EntityFrameworkProvider -Pre 
使用此命令时,Package Manager控制台会显示两个错误:

使用“8”参数调用“CreateInstanceFrom”时出现异常:“可能” 非负载型 'System.Data.Entity.ConnectionFactoryConfig.InitializeEntityFrameworkCommand' 从程序集'E EntityFramework.PowerShell,版本=5.0.0.0, 区域性=中性,PublicKeyToken=b77a5c561934e089'。位于C:\Realtime 来源\RTR 6.x\RTRServices\RTRWCFDataService\packages\EntityFramework.6.0.1\tools\EntityFramework.psm1:698 字符:31
+$domain.CreateInstanceFrom当我能够安装Alpha 2版本时,我遇到了很多与此提供程序相关的问题。正如您可以在原始公告的评论中发现的那样,其中许多都产生了不明确或误导性的例外情况。而且,目前,开发人员没有积极地让社区参与解决这些问题。事实上,自从上次Alpha发布以来已经过去了近两个月,现在还不清楚这是否是微软内部的优先事项

鉴于此,我不建议将任何生产代码基于此提供程序。事实上,我甚至会犹豫是否要开发一个更稳定的版本,直到我们看到这个版本的库背后有更多的动力。我的怀疑是,随着ASP.NET Web API 2.0的发布,WCF数据服务已被搁置一旁

在此之前,您最好选择以下选项之一:

  • 回到实体框架5.0
  • 建立一个习惯
  • 采用微软的新技术
  • 使用备用服务层,如*
这可能不是你希望的答案,也不是解决你的直接障碍,但是直到官方提供更多的行动,我才会考虑这些选项。
*Breeze是一个用于使用oData服务的客户端JavaScript库,但它还包括一个用于与流行的O/RMs接口的服务器端库,包括Entity Framework 6.0和NHibernate

虽然我能够安装Alpha 2版本,但我在该提供商方面遇到了不少问题。正如您可以在原始公告的评论中发现的那样,其中许多都产生了不明确或误导性的例外情况。而且,目前,开发人员没有积极地让社区参与解决这些问题。事实上,自从上次Alpha发布以来已经过去了近两个月,现在还不清楚这是否是微软内部的优先事项

鉴于此,我不建议将任何生产代码基于此提供程序。事实上,我甚至会犹豫是否要开发一个更稳定的版本,直到我们看到这个版本的库背后有更多的动力。我的怀疑是,随着ASP.NET Web API 2.0的发布,WCF数据服务已被搁置一旁

在此之前,您最好选择以下选项之一:

  • 回到实体框架5.0
  • 建立一个习惯
  • 采用微软的新技术
  • 使用备用服务层,如*
这可能不是你希望的答案,也不是解决你的直接障碍,但是直到官方提供更多的行动,我才会考虑这些选项。
*Breeze是一个用于使用oData服务的客户端JavaScript库,但它还包括一个用于与流行的O/RMs接口的服务器端库,包括Entity Framework 6.0和NHibernate

关于“安装软件包Microsoft.OData.EntityFrameworkProvider-Pre”时遇到的问题

从错误信息来看,6.0.0版的EntityFramework.psm1似乎正在尝试从EntityFramework.PowerShell.dll(版本=5.0.0.0)加载一些代码。我尝试了我的解决方案,但我无法重新解释这个问题

所以我猜你把EntityFramework5.0.0和EntityFramework6.0.1混合在一起了,但实际上我不知道怎么混合。因此,我的建议是采取以下步骤:

  • 卸载软件包Microsoft.OData.EntityFrameworkProvider
  • 卸载包EntityFramework
  • 卸载包EntityFramework-版本5.0.0
  • 然后通过“安装软件包Microsoft.OData.EntityFrameworkProvider-Pre”重新安装“Microsoft.OData.EntityFrameworkProvider”软件包
  • 如果无法在项目上正确完成前三个步骤,只需手动删除包中的所有EntityFramework文件夹和Microsoft.OData.EntityFrameworkProvider.1.0.0-Alpha 2文件夹。然后做第四步


    希望它能为您解决“安装包Microsoft.OData.EntityFrameworkProvider-Pre”时遇到的问题

    从错误信息来看,6.0.0版的EntityFramework.psm1似乎正在尝试从EntityFramework.PowerShell.dll(版本=5.0.0.0)加载一些代码。我尝试了我的解决方案,但我无法重新解释这个问题

    所以我猜你把EntityFramework5.0.0和EntityFramework6.0.1混合在一起了,但实际上我不知道怎么混合。因此,我的建议是采取以下步骤:

  • 统一