我想用前缀绑定一个集合,就像这样
public ActionResult Whatever([Bind(Prefix = "Prefix")] CustomModel[] models)
Run Code Online (Sandbox Code Playgroud)
我使用创建表单元素
<%= Html.TextBox("Prefix.models[" + i + "].Property") %>
Run Code Online (Sandbox Code Playgroud)
它生成了像这样的html输入
<input id="Prefix_models[0]_Property" name="Prefix.models[0].Property" />
Run Code Online (Sandbox Code Playgroud)
我的问题是默认模型绑定器不会与前缀绑定.我在动作方法中为模型arg得到null.
如果我从html中删除前缀并删除Bind属性,一切正常.我无法想象默认的模型绑定器不会处理集合上的前缀,所以我一定做错了.
请帮忙.干杯!
Lev*_*evi 11
[Bind]内部的前缀不会添加到参数名称前面,它会完全替换参数名称.因此,如果您的操作方法具有此签名:
public ActionResult MyAction([Bind(Prefix = "foo")] string[] bar) { ... }
Run Code Online (Sandbox Code Playgroud)
该粘结剂预期foo[0]
,foo[1]
等等.
归档时间: |
|
查看次数: |
7775 次 |
最近记录: |