【发布时间】:2012-06-19 00:30:54
【问题描述】:
我有一个 WCF Web 服务方法(通过 3.5 NET Framework),需要对其进行重构以使用可选输入参数。 Mi 调查得出的结论是可选参数作为 4.0 中引入的一个概念,所以我需要做一些解决方法来解决我的问题。我的代码更新如下所示:
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 时,我遇到了一个问题,表明第 1 列第 1 行的 svc 文件有错误(请注意,我没有包含确切的错误消息,因为我将 WS 回滚到以前的版本以避免在周末出现问题)。
我的问题是:有人认为我在开发中遗漏了什么吗?或者,当“安装”时,我能否正确重载我的 WCF 服务方法?问题解决了吗?
欢迎任何 cmets。
谢谢,
.NET 框架 3.5 Visual Studio 2008 标准版 C#
【问题讨论】:
-
您的服务合同似乎没有任何问题,但如果没有实际错误,则很难判断。是什么产生了错误——添加服务引用、浏览到 WSDL 或调用方法?
-
您提到错误消息指向 .svc 文件,第 1 列,第 1 行;但是您没有在问题中包含 .svc 文件的内容。除此之外,您显示的代码看起来是正确的。
标签: c# wcf .net-3.5 .net-framework-version