之前我已经创建了EF数据服务,但每次尝试创建EF5-WCF服务应用程序时都会收到此消息。
无法加载“ProcessRequestForMessage”操作,因为 它有一个参数或返回类型的类型 System.ServiceModel.Channels.Message或具有的类型 MessageContractAttribute和其他不同类型的参数。什么时候 使用System.ServiceModel.Channels.Message或类型 MessageContractAttribute,该方法不得使用任何其他类型的 参数。
当我尝试调试时,我收到了消息。我正在使用VS2012
不久之前,因为我使用过数据服务,但是查看我的旧VS2010项目,我已经修改了web.config以包含一个服务,其端点为“System.Data.Services.IRequestHandler”作为合同。
我还尝试了它,以及将绑定更改为“webHttpBinding”,这似乎也不起作用。有任何想法吗?
如果所有其他方法都失败了,我想我可以使用Open Access ORM及其内置的服务生成工具,因为我至少可以使用它。
最好的问候
Chris Leach
答案 0 :(得分:2)
添加: Factory =“System.Data.Services.DataServiceHostFactory,Microsoft.Data.Services,Version = 5.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35”
答案 1 :(得分:0)
没有直接解决这个问题,但是我从这个网站http://code.msdn.microsoft.com/windowsdesktop/WCF-Data-50-for-OData-v3-53074189下载了演示项目并修改了数据服务,然后修改了Voala。没有更多错误
希望这有助于其他人
为尝试家伙干杯。
答案 2 :(得分:0)
我遇到了同样的错误,但我注意到我的服务主机标记文件中缺少“Factory”属性。因此,单击您的数据服务文件并选择“查看标记”并检查是否存在Factory属性并且它是正确的:
在:
<%@ ServiceHost Language="C#" Debug="true"
Service="ServiceNamespace.ServiceClassName"
CodeBehind="ServiceClassName.svc.cs" %>
后:
<%@ ServiceHost Language="C#" Debug="true"
Service="ServiceNamespace.ServiceClassName"
Factory="System.ServiceModel.Activation.WebServiceHostFactory, System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
CodeBehind="ServiceClassName.svc.cs" %>