WebService重载问题

WebService重载问题
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo 
= WsiProfiles.BasicProfile1_1  )]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
// [System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService {
    
public WebService () {

        
//Uncomment the following line if using designed components 
        
//InitializeComponent(); 
    }
    [WebMethod]

    
public string HelloWorld() {
        
return "Hello World";
    }
 
    [WebMethod]

    
public string HelloWorld(string str)
    {
    
return  "Hellp World,"+str;
    }
}
WebService重载问题

 

 

在浏览器中查看,会报如下错误

WebService重载问题

 

修改步骤如下:

1.修改[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1  )],为[WebServiceBinding(ConformsTo = WsiProfiles.None  )];

2.为重载的各方法添加不同的MessageName属性,作为重载时的标识。

WebService重载问题
[WebMethod(MessageName ="ShowWithoutName",Description="直接输出HelloWorld")]
    
public string HelloWorld() {
        
return "Hello World";
    }
  
    [WebMethod (MessageName 
="ShowByName",Description="输出指定的字符串")]
    
public string HelloWorld(string str)
    {
    
return  "Hellp World,"+str;
    }
WebService重载问题

 

 

3.再次重新生成后,查看结果如下

WebService重载问题



    本文转自 陈敬(Cathy) 博客园博客,原文链接:http://www.cnblogs.com/janes/archive/2010/11/26/1889098.html,如需转载请自行联系原作者