【问题标题】:MVC Bulk Edit - ExamplesMVC 批量编辑 - 示例
【发布时间】:2009-02-04 04:26:57
【问题描述】:

好的,所以这是this question.的替代方法

我正在尝试使用 LinqToSql 生成一个 MVC 应用程序,该应用程序允许在单个页面上批量编辑数据。

想象一个简单的表 Item,其中 ItemId、ItemName、ItemPrice 作为字段。

有许多非常简单的 MVC 应用程序示例,它们向您显示这些项目的列表,每个项目旁边都有一个编辑按钮,底部有一个添加按钮。

从 UI 的角度来看,当需要输入/更新大量数据时,我发现这非常耗时。

我正在寻找一个页面,其中包含文本框中的项目名称和价格,可以一次性编辑所有内容,然后按下一个“保存”按钮来更新数据。

我已经看到了许多执行不同阶段的示例,但还没有找到一个可以实现完整解决方案的示例。特别是与 Linq 的交互。

我尝试了许多方法,但都有效,但是,我的直觉告诉我我的方法“有味道”,因此我想看看其他人如何尝试的一些例子。

所以,简单地说,我的问题是谁能提供一些示例的链接?

【问题讨论】:

    标签: asp.net-mvc linq linq-to-sql


    【解决方案1】:

    我有 written about how to do thisMvcContrib 的 FluentHtml。史蒂夫桑德森有written about how to do it 没有 FluentHtml。我们的两篇文章都有一个示例解决方案,您可以下载并查看。

    就 LinqToSql 而言,我认为批量编辑机制(控制器和视图)与 LinqToSql 之间的任何交互都是一种气味。也就是说,尽可能让你的 UI 不知道你的持久化机制。

    【讨论】:

      【解决方案2】:

      我可能会做的是在切换行时使用 jQuery 调用 jsonResult。此 jsonResult 将调用模型中的代码以仅为您要关闭的行保存 ItemId、ItemName、ItemPrice。更多关于一般 jsonResult w/jQuery 用法的信息:http://www.dev102.com/2008/08/19/jquery-and-the-aspnet-mvc-framework/

      您可以做的另一件事是将模型绑定到项目列表,遍历列表以保存每个项目——Phil Haack 在这里有一个列表绑定示例:http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx 使用任何一种方法,您都想做表示该行已更改的内容,因此如果您只是更改少数几行,则不会更新每个字段。

      【讨论】:

        【解决方案3】:

        您的目标到底是什么,您是否试图同时提交一系列信息?还是您只是不希望您的页面在每次更改某些内容时都回发。无论哪种情况,jQuery 都是您最好的选择。如果你想一次性完成所有事情,除非你使用 jQuery 控件来为你做这件事,否则它会变得很复杂。有一些很棒的,比如Flexigrid

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-11-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-10-17
          • 1970-01-01
          相关资源
          最近更新 更多