将视图中的网格数据发布到ASP.NET中的控制器MVC

问题描述:

如何将视图中的网格数据发布到控制器?我想知道如何做到这一点,以便模型在发布到控制器时将带来网格数据。将视图中的网格数据发布到ASP.NET中的控制器MVC

如果我有这样的

public class ViewModel 
{ 
    public virtual string Name { get; set; } 
    public virtual List<DetailModel> Details { get; protected set; } 
} 

,我在网格中显示它。我希望能够把它当我发布ViewModel回控制器像这样

[HttpPost] 
public void Save(ViewModel model) 
{ 
    repository.SaveDetails(model.Details); 
} 

我目前使用MVCContrib的网格,而应该片断能够做到这一点,任何其他电网实现应该能够即使MVC的默认Detail模板也适用它。

为了向网格显示这些数据,您必须从某处获取数据。那么为什么张贴呢?只需发送一些id并从相同的数据源重新获取它。另一方面,如果您的网格允许用户修改数据,则通常使用带有输入字段的HTML <form>

就绑定而言,这里是一个blog post,它解释了如何命名请求参数以便能够在post操作中成功重​​建视图模型。

+0

我在试用博客文章。虽然我没有获取表单输入字段的部分内容。这是否意味着每个单元格有一个表单元素我在哪里存储用户在网格上进行的每个编辑?我不想让他的编辑持续下去,直到他完成所有更改并单击提交按钮。 – Jonn 2011-01-06 00:55:55