【发布时间】:2017-12-24 21:42:53
【问题描述】:
[WebMethod]
[ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
public string getUser(string[] username){
string[] result= new string[5];
string qry="";
for(int i=0;i<5;i++)
{
username[i]= a;
qry="SELECT * FROM USER WHERE USERNAME='" + a + "' ";
result[i] = getjsondata(qry);
return result[i];
}
}
当我尝试执行一个方法时,它显示测试表单仅适用于以原始类型作为参数的方法。我尝试了List 作为参数,但也失败了。我想将string[] 作为参数传递给WebMethod。
【问题讨论】:
-
所示代码容易受到 SQL 注入攻击,如果名称包含撇号,它将无法工作。代码需要修改为使用 SQL 参数而不是字符串连接,这将解决这两个问题。
-
完全不相关,但我会考虑使用 Web API,更流畅,自我记录和工作的乐趣。我花了一天时间来学习基础知识并构建一个可行的解决方案。还有实体框架?如果您受框架/工作限制。请忽略。
标签: c# asp.net arrays webmethod