在C#中向SQL查询添加多个值

时间:2016-05-19 10:32:07

标签: c# sql angularjs

public IHttpActionResult Post(ModelName data){
var query="Select * from Table where ColumnName ='"+data.ID+"'";

return Ok(Value);
}

在上面的SQL查询中,我想在data.ID中添加多个ID。例如,我在一个实例中需要获取2个ID的数据。在另一个时间我需要来自20个ID的数据。我使用角度js传递带有数据的json数组。我怎样才能做到这一点。我是否必须为我的所有Id数据写入许多data.Id1,data.id2等。任何帮助

1 个答案:

答案 0 :(得分:3)

只要您正在清理输入,就可以使用:

var query = "Select * from Table where ColumnName in (" + list_of_ids + ")";

无论您有一个Id还是几个,这都可以。

list_of_ids必须是以逗号分隔的值字符串:

  

“a,b,c,d”

所以你需要一些转换方法来将每个id添加到列表中。

您可以建立一个值列表:

var myList = new List<string>();

if (data.Id1 is set)
{
    myList.Add(data.Id1.ToString());
}

etc.

string list_of_ids = string.Join(",", myList);