【问题标题】:using hidden fields a good idea? (ASP.NET, C#)使用隐藏字段是个好主意? (ASP.NET,C#)
【发布时间】:2011-04-06 23:45:00
【问题描述】:

在一个应用程序中,我从数据库中提取了一些数据,这些数据将被多种方法使用。在第一次绘制时将数据写入隐藏字段是一个好主意,还是应该在需要时再次绘制数据?

【问题讨论】:

  • 什么是 C# 中的隐藏字段?
  • 这个问题没有包含足够的信息。添加技术(WPF、ASP、SL、...) 添加数据量。添加应该重绘/评估的次数。显示您已经编写的代码。
  • @Rolfcoptr:我认为 OP 可能意味着 private
  • @Roflcoptr,它可能是 ASP.NET 页面上的隐藏输入... ;)

标签: c# asp.net hiddenfield


【解决方案1】:

这取决于您要保存或保留的内容

  • 隐私

    如果数据需要更高的安全性,请不要将其保存在隐藏字段中。

  • 尺寸

    如果数据很小,那么它的精细else隐藏字段不是有效的方法。

【讨论】:

    【解决方案2】:

    这取决于数据是什么以及您将如何使用它。

    是什么样的数据?

    如果是应该保护的数据,例如 PHI 或其他,切勿以这种方式存储。使用会话状态。否则,请转到下面的下一个问题。

    你会在哪里使用它?

    如果在后面的代码中使用,请使用视图状态或会话状态。如果您打算使用 jquery 或 javascript 来使用它并且不需要保护它,那么隐藏字段就可以了。

    【讨论】:

      【解决方案3】:

      我说这取决于您对安全性的需求。记住隐藏字段是客户端的,因此最终用户可以编辑。

      如果这些字段将被回发或用于比一些交互更敏感的事情,那么每次从数据库中获取它可能会更安全。

      【讨论】:

        【解决方案4】:

        如果您指的是私有字段,那么是的,这是一个好主意,只要所有使用它的方法的数据都相同。

        【讨论】:

          【解决方案5】:

          我想这取决于几个因素,包括但不限于:

          • 数据多久更改一次?
          • 如果总是重新获取数据,您需要多久访问一次数据库?
          • 正在检索的数据有多敏感?
          • 正在检索多少数据?
          • 等等等等……

          在大多数情况下,决定完全取决于情况;而且我们不一定有间接信息。

          【讨论】:

            【解决方案6】:

            隐藏字段意味着您将这些数据发送给客户端,客户端在提交时将数据上传回给您。这可能是安全问题或性能问题。 但这一切都取决于您的情况。

            您可能更愿意使用Session

            Caching

            【讨论】:

              【解决方案7】:

              拥有单一事实来源,即数据的“主控”通常是个好主意。现在您可能出于性能原因想要复制这些数据,但在您需要它之前,您不应该这样做。

              【讨论】:

                猜你喜欢
                • 2011-02-09
                • 1970-01-01
                • 1970-01-01
                • 2011-12-24
                • 2011-10-21
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多