can there be 2 webmethods with same name inside a web service in c#
I was asked a question in interview
can there be 2 webmethods with same name inside a web service in c#.
开发者_如何学CWith function overloading it is possible but interviewer wanted an answer without using function overloading.
My answer was No. IS it correct.Please comment.
It can be done as you can read here: http://www.codeproject.com/KB/webservices/OverloadingInWebService.aspx
The reason why you need to do this "special" stuff is just because WSDL does't support the same method names...
Edit: I see the link forgot about the WebServiceBinding:
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.None)]
public class TestService : System.Web.Services.WebService {
}
Actually, it is possible with a little bit of work. The key is changing the message name:
(taken from the link below)
[WebMethod(MessageName="Add_TwoNumbers")]
http://scottwhite.blogspot.com/2005/09/overloading-web-service-methods-in-net.html
No, you can't have two methods with the same name and same signature. That doesn't make much sense.
I guess you can if you expose them as different external names (if that is possible).
精彩评论