我正在构建 WCF 服务,我已经在 IService 文件中编写了合同并在服务文件中实现了它,当我尝试更改我声明的方法的任何返回值时出现问题,这是因为它们是被保存在CustomersService命名空间的代码中,特别是在CustomersServiceClient类中,该类被锁定并且无法访问以进行更改。
这是我在 ICustomersService 文件中的代码:
[ServiceContract]
public interface ICustomersService
{
[OperationContract]
CustomerDetails GetCustomerDetails(string customerid);
[OperationContract]
bool VerifyId(string customerid);
}
以及 CustomersService 文件中的代码:
public CustomerDetails GetCustomerDetails(string customerid)
{
....
}
public bool VerifyId(string customerid)
{
...
}
在 CustomerService1 命名空间中,我有这个代码已经生成并锁定,所以任何修改我在 IService 中的方法的尝试都失败了,因为它被锁定在这里并且无法更改!
public class CustomersServiceClient : ClientBase<ICustomersService>, ICustomersService
{
public CustomersServiceClient();
public CustomersServiceClient(string endpointConfigurationName);
public CustomersServiceClient(Binding binding, EndpointAddress remoteAddress);
public CustomersServiceClient(string endpointConfigurationName, EndpointAddress remoteAddress);
public CustomersServiceClient(string endpointConfigurationName, string remoteAddress);
public CustomerDetails GetCustomerDetails(string customerid);
public bool VerifyId(string customerid);
}
这对我来说是个严重的问题,我希望你能找到我的答案。