Muh*_*laa 6 asp.net-mvc parameter-passing model-binding asp.net-web-api
我试图传递一个int数组但我无法获得webapi方法中的值
var postData = { "deletedIds": deletedIds };
    $.ajax({
        type: "DELETE",
        traditional: true,
        dataType: 'json',
        contentType: 'application/json',
        cache: false,
        url: "/api/Management/Models",
        data: JSON.stringify(postData),
        success: ModelDeleted,
        error: ModelNotDeleted
    });
在apiController中:
[HttpDelete]
        public bool DeleteModel(int[] deletedIds)
        {
            return modelsRepository.DeleteModels(deletedIds);
        }
你的代码看起来很不错.请定义"deletedIds"对象的结构.一个建议是使用new Array()对象初始化deletedIds属性并删除JSON.stringify().这里也有类似的问题.
编辑
Web API支持以各种方式解析内容数据,但它不处理多个发布的内容值.您的问题的解决方案可能是创建一个具有int []类型属性的ViewModel.像下面的代码,
public class SimpleViewModel
{
    public int[] deletedIds{ get; set; }
}
//Controller
[HttpDelete]
    public bool DeleteModel(SimpleViewModel deletedIds)
    {
        return modelsRepository.DeleteModels(deletedIds.deletedIds);
    }
并将其用作参数类型.
| 归档时间: | 
 | 
| 查看次数: | 9943 次 | 
| 最近记录: |