在ASP.NET MVC2创建方法中使用FormCollection的正确方法?

我目前正在使用新的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有什么好处,更重要的是 – 它是如何正确使用的?

解决方法

你也有v1中的FormCollection对象.但更优选使用类型化对象.所以如果你已经这样做了,那就继续这样做吧.

相关文章

引言 本文从Linux小白的视角, 在CentOS 7.x服务器上搭建一个...
引言: 多线程编程/异步编程非常复杂,有很多概念和工具需要...
一. 宏观概念 ASP.NET Core Middleware是在应用程序处理管道...
背景 在.Net和C#中运行异步代码相当简单,因为我们有时候需要...
HTTP基本认证 在HTTP中,HTTP基本认证(Basic Authenticatio...
1.Linq 执行多列排序 OrderBy的意义是按照指定顺序排序,连续...