我正在开发Base WCF服务 - 客户端WCF服务 - Consumer Base Wcf servcie模型如下:
在这个模型中,我创建了一个基本WCF服务并创建了1个WCF服务,即; ClientWCFService和1 ASMX服务,即; ClientASMXservice使用BaseWCFServiceProxy.cs使用SVCUtil.exe的Base WCF服务的Proxy类。
ClientWCFService和ClientASMXservice在StandAlone环境中正常运行。 现在,我使用相同的代理类BaseWCFServiceProxy.cs创建了一个Consumer Console应用程序,以使用BaseWcfService类访问ClientWCFService和ClientASMXservice。
根据 OOP规则,BaseWcfService类是ClientWCFService和ClientASMXservice的基类,我可以使用Base服务类构造函数访问这些服务。
服务电话如下: 对于ClientWCFService
ModelWcfServiceContractClient _client = new ModelWcfServiceContractClient("IModelWcfServiceContract","http://localhost:64242/ClientWCFServiceWcfUsingSVCProxy.svc");
for ClientASMXservice
ModelWcfServiceContractClient _client = new ModelWcfServiceContractClient("IModelWcfServiceContract","http://localhost:64396/ClientASMXServiceWcfUsingSVCProxy.asmx");
Consumer Console应用程序正在构建正常,但在初始化ModelWCFServiceContractClient对象时运行时, 它将 InvalidOperation Exception 抛出为:
找不到名称为“IModelWcfServiceContract”的端点元素 并在ServiceModel客户端中签订“IModelWcfServiceContract” 配置部分。这可能是因为没有配置文件 找到您的应用程序,或者因为没有端点元素匹配 这个名字可以在客户端元素中找到。
我尝试为每种类型的服务使用不同的端点来解决此问题,但无法取得成功。
更快的回应将得到赞赏。另外请不要只是清除拼写错误来帮助我,因为它会浪费我的时间来阅读由于清除拼写错误而产生的警报。时间对我来说至关重要..
由于
答案 0 :(得分:2)
试试这个(希望你可以关注):
在Visual Studio中,选择包含ModelWcfProxy
(生成ModelWcfServiceContractClient
代理类的那个)的ServiceReference的项目。
从Solution Explorer菜单栏中选择“显示所有文件”。
展开“服务引用”文件夹和生成的“服务引用”。找到.svcmap文件,在下面查找Reference.cs文件。
在生成的界面的顶部,应该定义System.ServiceModel.ServiceContractAttribute
。在属性构造函数中,您应该看到正在设置ConfigurationName属性。此合同配置名称应与config中定义的名称或您要发送到方法的名称匹配:
ModelWcfServiceContractClient _client = new ModelWcfServiceContractClient("IModelWcfServiceContract","http://localhost:64242/ClientWCFServiceWcfUsingSVCProxy.svc");
希望这有帮助。