我们的应用程序通过客户端应用程序的web.config中的dll引用和WCF配置条目与WCF Web服务集成。当我尝试模拟Web服务时,我收到了一个"找不到引用ServiceModel客户端配置部分中的契约的默认端点元素。这可能是因为没有为您的应用程序找到配置文件,或者因为没有匹配此组合的端点元素..."错误。 为解决此问题,我已将web.config中的相应绑定添加到测试项目的app.config文件中,并将其设置为"始终复制"所以它被复制到bin \ debug文件夹但我仍然得到错误。 我该如何解决这个问题?
using Payments.ServiceReferences.PaymentServiceProxy;
public interface IPaymentsAPIClientGenerator
{
PaymentServiceClient PaymentServiceClient { get; }
}
using Payments.ServiceReferences.PaymentServiceProxy;
public class PaymentsAPIClientGenerator : IPaymentsAPIClientGenerator
{
public PaymentsAPIClientGenerator()
{
}
public PaymentServiceClient PaymentServiceClient
{
get
{
var paymentServiceClient = PaymentVaultProxyFactory.GeneratePaymentServiceClient();
return paymentServiceClient;
}
}
}
[TestMethod]
public void IfTheSecondPaymentFailsThenTheFirstPaymentShouldBeVoided()
{
//Arrange
var iPaymentsAPIClientGeneratorMock = new Mock<IPaymentsAPIClientGenerator>();
var paymentServiceClient = new Mock<PaymentServiceClient>();
iPaymentsAPIClientGeneratorMock.SetupGet(counter => counter.PaymentServiceClient).Returns(paymentServiceClient.Object);
}
答案 0 :(得分:1)
生成该dll的项目的web.config应该具有绑定配置。如果你在DLL中引用dll作为项目引用,那么它应该使用内置的任何设置,否则,最直接的解决方案是将绑定复制到测试应用程序的配置。