我创建了一个Web方法,它将采用这样的参数
public HttpResponseMessage MakeOrders([FromUri] int[] orderId)
{
}
请求将是这样的
http://www.test.com/MakeOrders?orderId=1&orderId=2
我需要将这些orderId's
传递给DAL
。所以我有两个问题
[FromUri]
这是正确的实现,还是在查询字符串中传递数组值的标准方法?orderId's
并作为单个元素传递给DAL,以便我可以像这样制作我的DAL DAL
public void UpdateOrder(int OrderId)
{
var query = 'Update tbl SET isApproved=1 WHERE OrderId=@orderid';
}
或者我需要发送像这样的数组
public void UpdateOrder(int[] OrderId)
{
var query = 'Update tbl SET isApproved=1 WHERE OrderId in (@orderid)';
}
答案 0 :(得分:1)
第一个答案是: 我认为更好的方法是以json格式传递List
例如:
// Json format
var a=[1,2,3];
使用jquery的$ .ajax()方法传递此值。
第二个答案是:
public void UpdateOrder(int[] OrderId)
{
var orderids= string.Join(",", (string[])OrderId.ToArray(Type.GetType("System.String")))
var query = 'Update tbl SET isApproved=1 WHERE OrderId in (@orderids)';
}