我有一个A类,其中包含:
public IList<PropertyValueOperators> FilterList { get; set; }
其中PropertyValueOperators:
public class PropertyValueOperators
{
public string Property { get; set; }
public string Value { get; set; }
public string LikeOperator { get; set; }
}
我还有一个强类型视图,它创建了一个基于类A的表单。我在这里阅读:
ASP.NET MVC model binding an IList<> parameter
模型绑定应该能够填充像FilterList这样的列表,所以我实现了一个生成这样的HTML帮助器:
<label for="items[0].Property">Filter By</label>
<select id="items[0]_Property" name="items[0].Property">
<option selected="selected" value="Item.Id">DBId</option>
<option value="Category_ItemName.Name">Name</option>
</select>
<label for="items[0].LikeOperator">Filter Operator</label>
<select id="items[0]_LikeOperator" name="items[0].LikeOperator">
<option value="Contains">Contains</option>
<option value="EndsWith">Ends With</option>
<option selected="selected" value="Equals">Equals</option>
<option value="Starts With">Starts With</option>
</select>
<label for="items[0].Value">Filter Value</label>
<input name="items[0].Value" style="width: 100px;" value="920058" id="items[0]_Value" width="5" type="text">
<br>
<label for="items[1].Property">Filter By</label>
<select id="items[1]_Property" name="items[1].Property">
<option value="Item.Id">DBId</option>
<option selected="selected" value="Category_ItemName.Name">Name</option>
</select>
<label for="items[1].LikeOperator">Filter Operator</label>
<select id="items[1]_LikeOperator" name="items[1].LikeOperator">
<option value="Contains">Contains</option>
<option value="EndsWith">Ends With</option>
<option value="Equals">Equals</option>
<option selected="selected" value="Starts With">Starts With</option>
</select>
<label for="items[1].Value">Filter Value</label>
<input name="items[1].Value" style="width: 100px;" value="" id="items[1]_Value" width="5" type="text">
不幸的是,当我发布此表单时,FilterList的计数为0.你能看到错误吗?或者,如果不实现自定义模型绑定器,它是不可能实现我想要的?
感谢。
基督教
答案 0 :(得分:1)
请随时投票删除。解决方案是使用FilterList替换项目。就是这样。
基督教