3

从 ASP.NET 中的代码隐藏访问表单或查询字符串值时,使用的优缺点是什么,例如:

// short way
string p = Request["param"];

代替:

// long way
string p = Request.QueryString["param"]; // if it's in the query string or
string p = Request.Form["param"];        // for posted form values

这个问题我想了好几遍,得出的结论是:

短途:

  • 更短(更易读,新手更容易记住等)

很长的路要走:

  • 如果存在同名的表单值和查询字符串值,则没有问题(尽管这通常不是问题)
  • 以后读代码的人就知道是查看 URL 还是表单元素来查找数据的来源(可能是最重要的一点)

.

那么每种方法还有哪些其他优点/缺点呢?

4

2 回答 2

9

param 集合包括所有 (4) 个集合:

  1. 查询字符串参数
  2. 表单域
  3. 饼干
  4. 服务器变量

您可以争论在组合集合中搜索比查看特定集合要慢,但可以忽略不计

于 2011-02-09T03:10:19.177 回答
4

漫长的道路更好,因为:

  • 它使(稍后阅读代码时)更容易找到值的来源(提高可读性)

  • 稍微快一些(尽管这通常并不重要,并且仅适用于首次访问)

在 ASP.NET(以及 PHP 中的等效概念)中,我总是使用您所说的“长格式”。我这样做的原则是我想确切地知道我的输入值来自哪里,以便确保它们以我期望的方式到达我的应用程序。因此,我更喜欢更长的方式用于输入验证和安全性。另外,正如您所建议的,我认为可维护性值得多敲几下键。

于 2011-02-09T03:17:22.207 回答