我尝试将 an 绑定OrderedDictionary
到视图,但是当调用 post 方法时,Dictionary 始终为空。
这是我的代码:
[HttpGet]
public ViewResult Edit(string username, string password)
{
Xml test = new Xml(@"c:\Users\pc\Desktop\xml - Copy.xml");
XmlNode userNode = test.GetUserNodeByUsernameAndPassword(username, password);
User user = new User();
user.BindData(userNode);
return View(user.user);
}
[HttpPost]
public ViewResult Edit(OrderedDictionary attributes)
{
return View(attributes);
}
这是视图:
@using (Html.BeginForm("Edit", "Users")) {
@Html.ValidationSummary(true)
<fieldset>
<legend>User</legend>
<p>
<input type="submit" value="Save" />
</p>
@{int counter = 0;}
@{string name = "";}
@foreach (DictionaryEntry attribute in Model)
{
{ name = "[" + counter + "].key"; }
<input type="hidden" name=@name value=@attribute.Key />
@attribute.Key @Html.TextBoxFor(m => attribute.Value)
counter++;
<br />
}
</fieldset>
}
结果 Html 看起来像这样:
<input type="hidden" value="Username" name="[0].key">
Username
<input id="attribute_Value" type="text" value="Anamana" name="attribute.Value">
因此,OrderedDictionary
视图中的内容看起来很好,但是当我发回帖子时,绑定不起作用并且目录保持为空。