Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc ASP.NET MVC:使用编辑操作时如何获取实际对象?_Asp.net Mvc - Fatal编程技术网

Asp.net mvc ASP.NET MVC:使用编辑操作时如何获取实际对象?

Asp.net mvc ASP.NET MVC:使用编辑操作时如何获取实际对象?,asp.net-mvc,Asp.net Mvc,我刚刚开始使用asp.net mvc,我有一个非常基本的问题: 如果我有一个显示有关System.Web.Mvc.ViewPage信息的视图,那么在将表单值传递给我的FooController上的编辑操作时,如何获取实际对象? 默认情况下,我得到了编辑操作的以下实现: public ActionResult Edit(int id, FormCollection collection) 有没有办法让我再承受一次这样的超负荷 public ActionResult Edit(int id, Fo

我刚刚开始使用asp.net mvc,我有一个非常基本的问题:

如果我有一个显示有关
System.Web.Mvc.ViewPage
信息的视图,那么在将表单值传递给我的FooController上的编辑操作时,如何获取实际对象? 默认情况下,我得到了编辑操作的以下实现:

public ActionResult Edit(int id, FormCollection collection)
有没有办法让我再承受一次这样的超负荷

public ActionResult Edit(int id, Foo myObject)
谢谢

编辑:

抱歉,伙计们,再多了解一点背景知识,这样你们就明白我在想什么了……因为我有自己的框架来重播我对实体所做的更改,所以我不需要重新查询实体并使用UpdateModel()方法。我最后做的就是有这样一种方法:

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(Foo myObject)
{
}

我不知道,但那很好用。多亏了让我读到这篇文章的答案:

你可能会写一些疯狂的类型转换器,但是有一些帮助方法可以将FormCollection中的值映射到你的Foo对象上


编辑:我认为它是作为一个扩展方法实现的,称为UpdateFrom(..)

实现编辑方法的最简单方法是使用UpdateModel方法,该方法已经包含在控制器基类中,如下所示:

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(int id, FormCollection collection)
{

    LinqEntity entity = MyRepository.GetEntity(id);
    UpdateModel(entity);

    //validate and save your entity here

}
编辑:我也刚刚开始学习ASP.NETMVC,发现非常有用。它展示了如何实现一个简单的MVC网站(你可以在nerddinner.com上看到),并涵盖了许多普通的主题,如上面的主题

相关问题:


这可能会满足您的需要。

如果您需要了解如何正确操作,请转到并下载源代码。这个网站是由Scott Gu,Phil Haack和其他人开发的,展示如何做MVC