Web方法可以重载吗?

时间:2009-10-05 21:48:58

标签: c# .net oop

我已经构建了一个常规的.NET asmx服务。如何在此服务中重载Web方法?

4 个答案:

答案 0 :(得分:20)

WS-I(Web服务互操作性)不支持重载。

答案 1 :(得分:16)

您无法真正超载Web方法。当你考虑它时,这是有道理的,因为web方法的设计不依赖于OO语言等底层技术,因为理论上它可以在COBOL之类的东西中运行。

虽然您可以编写一个看似可以重载的Web方法,但实际上您必须为其指定一个不同的名称,如:

[WebMethod]
public void Add(int x, int y)
{
}
[WebMethod(MessageName="AddFloat")]
public void Add(float x, float y)
{
}

答案 2 :(得分:1)

是。

WebMethod属性采用MessageName参数,允许您“重载”该方法。

答案 3 :(得分:0)

没有。 Web服务方法名称必须是唯一的。