我目前正在使用新的ASP.NET MVC2框架开发应用程序。最初我是在ASP.NET MVC1中编写这个应用程序,现在我只是将其更新到MVC2。
我的问题是,我不太理解FormCollection对象与旧的Typed对象的概念区别。
以下是我的当前代码:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(FormCollection collection)
{
try
{
Member member = new Member();
member.FirstName = collection["FirstName"];
member.LastName = collection["LastName"];
member.Address = collection["Address"];
// ...
return RedirectToAction("Details", new { id = member.id });
}
catch
{
return View("Error");
}
}
这是来自MVC1应用程序的代码:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(Member member)
{
try
{
memberRepository.Add(member);
memberRepository.Save();
return RedirectToAction("Details", new { id = member.id });
}
catch
{
}
return View(new MemberFormViewModel(member, memberRepository));
}
转换到MVC2中的FormCollection有哪些好处,更重要的是,如何正确使用它?