我有一项我试图在单元测试中使用的服务。在这一点上,我只是想实例化这个东西。在遭受“无法找到引用合同的默认端点元素”错误数小时且无法弄清楚之后,我完全删除了消费者并从头开始。我所做的只是在我的测试项目中添加一个服务引用,将它指向我的服务,点击“GO”就可以了。还是不行。我没有碰任何代码,但在我让 VS 构建之后它就无法正常工作。
这是我的 app.config 中用于测试项目的相关行:
<client>
<endpoint address="http://mike-laptop/kbs/FFEDI/Service.svc"
binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IEdiService"
contract="ServiceReference2.IEdiService" name="BasicHttpBinding_IEdiService" />
</client>
在我的单元测试中,这是我的方法:
public void CreateWebServiceInstance()
{
ServiceReference2.EdiServiceClient webService = new ServiceReference2.EdiServiceClient();
string svcAddress = webService.Endpoint.Address.ToString();
Console.WriteLine("Address is: " + svcAddress);
Assert.IsTrue(svcAddress.Equals("http://mike-laptop/kbs/FFEDI/Service.svc")); // test
}
我得到的错误是:
System.InvalidOperationException:在 ServiceModel 客户端配置部分中找不到引用合同“ServiceReference2.IEdiService”的默认端点元素。这可能是因为没有为您的应用程序找到配置文件,或者因为在客户端元素中找不到与此协定匹配的端点元素。
再说一次,这次我什么都没改变。有任何想法吗?