【发布时间】:2017-07-02 13:52:29
【问题描述】:
我想用可选参数构建一个WebMethod。
我知道设置MessageName 的方法。
[WebMethod(MessageName = "Default")]
public void SearchPerson(String finger_print_base64)
{
}
[WebMethod(MessageName = "AddThreshold")]
public void SearchPerson(String finger_print_base64,int threshold)
{
}
但是我想设置两个相同类型的参数。
[WebMethod(MessageName = "AddThreshold")]
public void SearchPerson(String finger_print_base64,int threshold)
{
}
[WebMethod(MessageName = "AddMinMatches")]
public void SearchPerson(String finger_print_base64,int mini_matches)
{
}
Visual Studio 告诉我一个错误。
"SearchPerson 已经有一个具有相同类型参数的方法 "
【问题讨论】:
-
错误很明显吧?你想达到什么目的?
-
你有三个签名相同的方法。您如何期望编译器检测到它们不同?虽然
MessageName属性用于web 服务 中的方法重载,但您的代码应该首先编译。 -
您应该关注您的方法声明,而不是 webmethods 的名称。非常明显的错误,你有一个签名相同的方法。
-
这个项目是一个HTTP WEB API。我想建立一个用户可以向服务器发布一些信息的接口。finger_print_base64是一个集成参数,阈值或mini_matches是可选参数。所以我只想知道如何实现这个接口。
标签: c# asp.net web-services