InvalidOperationException while creating wcf web service instance我有从类库引用的WCF Web服务。 运行项目后,从类库内部创建服务客户端对象时,我收到带有消息的InvalidOperationException:
我用来创建实例的代码是:
MyServiceClient继承自的地方 System.ServiceModel.ClientBase 我该如何解决? 注意:我有一个单独的控制台应用程序,它可以简单地创建相同的服务对象并对其进行调用,并且可以正常工作。 或者,您可以在代码中设置端点: http://msdn.microsoft.com/en-us/library/ms731862.aspx
您应该将此配置设置放入主应用程序的配置文件中。 .NET应用程序(正在调用您的类库)使用其自身配置文件中的数据,而不是库配置文件中的数据。 我有一个类似的情况。我有一个称为Web服务的类库,然后有一个称为类库的.DLL的.EXE。我认为使用的是.EXE的配置文件,而不是.DLL的配置文件。
但是正如Richard上面所说,我必须完全限定名称空间。有点痛苦。 1)您必须按如下所示实际更改reference.cs中的ConfigurationName:
来自:
至: 2),然后还如下更改所有相关app.config(.dll和.exe)中的"合同"值: 从: <端点地址= http://nxwtest08bt1.dev.txfb-ins.com/TFBIC.RCT.BizTalk.Orchestrations/WcfService_TFBIC_RCT_BizTalk_Orchestrations.svc binding =" wsHttpBinding" bindingConfiguration =" WSHttpBinding_ITwoWayAsync" contract =" RCTWebService.WcfService_TFBIC_RCT_BizTalk_Orchestrations" name =" WSHttpBinding_ITwoWayAsync"> 至: <端点地址= http://nxwtest08bt1.dev.txfb-ins.com/TFBIC.RCT.BizTalk.Orchestrations/WcfService_TFBIC_RCT_BizTalk_Orchestrations.svc binding =" wsHttpBinding" bindingConfiguration =" WSHttpBinding_ITwoWayAsync" contract =" TFBIC.RCT.HIP.Components.RCTWebService.WcfService_TFBIC_RCT_BizTalk_Orchestrations" name =" WSHttpBinding_ITwoWayAsync">
只是要清楚-我怎么知道完整的名称空间是什么?
如果发布了app.config文件,这可能会有所帮助,因为这种错误倾向于指出 编辑:尝试完全限定您的合同价值;使用完整的名称空间。我认为这是必要的。 |