我有一个WCF Web服务方法(超过3.5 NET框架)需要重构使用可选输入参数。 Mi调查得出可选参数,因为4.0版本正在推出一个概念,所以我需要采取一些解决方法来解决我的问题。我的代码更新如下:WCF服务方法重载问题 - 需要帮助
partial class Class1: IService {
public int MethodName (int param1, string param2)
{
// code here
}
public int MethodName (int param1)
{
// code here
string param2 = FillInInternally();
return this.MethodName(param1, param2);
}
我也更新了我的经营合同:
[ServiceContract]
public interface IService
{
[OperationContract(Name = "Alias1")]
int MethoName(int param1, string param2);
[OperationContract(Name = "Alias2")]
int MethoName(int param1);
}
public partial class ServiceClient : ClientBase <IService>, IService
{
public int MethoName(int param1, string param2)
{
return Channel.MethodName(param1, param2);
}
public int MethoName(int param1)
{
return Channel.MethodName(param1);
}
}
有了这样的解释,我是能够得到Web服务建立正确。除了集成测试还能完美运行。之后,我需要在服务器上进行安装,并且在尝试测试WSDL时,我遇到了issu,指出第1列第1行的svc文件存在错误(请注意,我没有包含确切的错误消息,因为为了避免在周末出现问题,我将WS回滚到以前的版本)。
我的问题是:有人认为我从发展中失去了一些东西吗?或者,当“安装”时,我能否正确地重载WCF服务方法?问题解决了?
任何意见将受到欢迎。
感谢,
.NET Framework 3.5的 的Visual Studio 2008标准版 C#
您的服务合同似乎没有任何问题,但没有实际的错误,这将很难说。什么是产生错误 - 添加服务引用,浏览到WSDL或调用方法? –
您提到错误消息指向.svc文件,列1,行1;但是你没有在你的问题中包含.svc文件的内容。除此之外,你所显示的代码看起来是正确的。 – CodingWithSpike