【发布时间】:2010-10-13 14:12:07
【问题描述】:
我刚刚学习 ASP.NET MVC,我正在尝试为单元测试创建一个模拟表单请求。
我正在使用 RhinoMocks。
我查看了以下网站,但无法使用这些网站。
http://blog.maartenballiauw.be/post/2008/03/19/ASPNET-MVC-Testing-issues-Q-and-A.aspx
更新: 控制器代码:
/// <summary>
/// Creates a new entry
/// </summary>
/// <returns></returns>
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create([Bind()]Person person)
{
if (Request.Form["DateOfBirth"].ToString() == "")
{
TempData["message"] = "Please select a date of Birth";
ViewData["DateOfBirth"] = Request.Form["DateOfBirth"].ToString();
MvcValidationAdapter.TransferValidationMessagesTo(ViewData.ModelState, person.ValidationMessages);
return View();
}
else
{
if (person.IsValid())
{
person.DateOfBirth = Convert.ToDateTime(Request.Form["DateOfBirth"]);
personRepository.SaveOrUpdate(person);
TempData["message"] = person.Firstname + " was successfully added";
return RedirectToAction("Create", "OrderDetails", new { id = person.ID });
}
else
{
ViewData["DateOfBirth"] = Request.Form["DateOfBirth"].ToString();
MvcValidationAdapter.TransferValidationMessagesTo(ViewData.ModelState, person.ValidationMessages);
return View();
}
}
}
【问题讨论】: