我正在尝试使用MVC 3.0和Razor的非常基本的MVC项目。请参阅此link的文章。
我创建了一个强类型视图,用于使用名为“Contact”的模型类编辑Contacts。
namespace Practice.Models
{
public class Contact
{
public string firstName;
public string lastName;
public string mobileNumber;
}
}
“索引”方法使用列表类型视图显示所有联系人。当我点击联系人的“编辑”链接时,它会使用编辑视图在文本框中显示联系人详细信息。
但是,当我提交编辑表单时,我没有在控制器操作方法中获取模型值。它为每个属性显示null。在这么简单的例子中,我到底能错过什么?
DirectoryController
[HttpPost]
public ViewResult Edit(Contact model)
{
contactRepository.Update(model);
return View("Details", model);
}
查看
@model Practice.Models.Contact
@{
ViewBag.Title = "Edit";
}
<h2>Edit</h2>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"> </script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@using (Html.BeginForm("Edit","Directory"))
{
@Html.ValidationSummary(true)
<fieldset>
<legend>Contact</legend>
@Html.TextBoxFor(m => m.firstName)
@Html.TextBoxFor(m => m.lastName)
@Html.TextBoxFor(m => m.mobileNumber)
<p>
<input type="submit" value="Save" />
</p>
</fieldset>
}
<div>
@Html.ActionLink("Back to List", "Index")
</div>
答案 0 :(得分:4)
您在模型属性
上缺少{ get; set; }