【问题标题】:Updating GridView after insert插入后更新 GridView
【发布时间】:2012-01-09 16:09:20
【问题描述】:

我们将 Visual Studio 2010 和 .NET 4.0 用于 ASP.NET 网站,将 MVC 用于一般架构。

这个问题有两个部分。没有什么是关于如何做到这一点,而是根据良好的设计和行业标准,正确的方法是什么。

    1234563并通过从会话中获取新数据来重新绑定网格视图?
  1. 在插入的情况下,我有 2 个选择。一、在数据库中插入一条记录并重新加载gridview并重新绑定。二、在会话和数据库中插入记录,并根据会话数据更新GridView。我不需要从数据库中下载新数据。

你能指出我正确的方向吗?

【问题讨论】:

    标签: c# asp.net gridview


    【解决方案1】:

    一次忘记 1000 条记录...如果您一次只显示 100 条,那么您只需要担心这些。在我看来,重新查询数据库。一次100条记录并不多。不要依赖会话来处理这类事情,拥抱网络的“无状态”特性。

    我认为使用会话不会给您带来太多好处。无论哪种方式,信息都需要发送到用户的浏览器。查询数据库的 100 条记录可能是一项微不足道的操作(就延迟而言)。从开发的角度来看,在这里引入会话状态所增加的复杂性是不值得的。 (问问自己,在这里 session 到底能给你带来什么好处?)

    这只是我的意见,其他人可能会有所不同。但我无法想象在这种情况下一次查询 100 条记录会遇到太多问题

    【讨论】:

      【解决方案2】:

      您可以将数据存储在服务器的缓存对象中,以避免每次都读取数据库。 http://msdn.microsoft.com/en-us/library/aa478965.aspx

      【讨论】:

        【解决方案3】:

        阅读 ScottGu 的这篇文章。在数据库中分页您的记录集。在大多数情况下,这是正确的方法。这篇文章展示了一些基准。如果您的网站流量很高,则在会话中存储可能会占用大量资源。如果您要扩展到 webfarm,您可能最终还是会将会话状态存储在 sql server 中。

        会话数据也是易变的。如果用户在 2 个浏览器窗口中打开同一个页面怎么办?你最终会踩到每一页的脚趾。如果用户离开页面,让会话或缓存过期怎么办?缓存也会有同样的问题。

        服务器上的分页规模最大。

        http://www.4guysfromrolla.com/articles/031506-1.aspx#postadlink

        【讨论】:

          猜你喜欢
          • 2020-01-03
          • 2016-10-16
          • 1970-01-01
          • 1970-01-01
          • 2016-01-13
          • 1970-01-01
          • 2015-11-06
          • 2016-02-12
          • 1970-01-01
          相关资源
          最近更新 更多