所以我有一个控制器,当我想发布模型时,我只想绑定某些字段。我想从[Bind]标签中提取params数组,因为它会变得很长。我该如何完成?当我尝试下面的代码时,我当前收到“属性参数必须是属性参数类型的常量表达式,typeof表达式或数组创建表达式”。
protected static readonly string[] BINDABLE = { "PartID", "InternalPartNum", "ManufacturerPartNum" };
[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult Create([Bind(BINDABLE)]PartModel model)
{
if (!ModelState.IsValid)
{
ViewData["ObjectName"] = OBJECT_NAME;
return BadRequest(ModelState);
}
_partDAO.Insert(model);
return RedirectToAction(nameof(Index));
}
答案 0 :(得分:0)
对于Bind
,它可以接受String,您可以在下面尝试用workaroud:
protected const string BINDABLE = "PartID,InternalPartNum" ;
[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult Create([Bind(BINDABLE)]PartModel model)
{
return Ok();
}