【发布时间】:2014-01-14 06:13:20
【问题描述】:
我们有一个 ASP .NET 4.0 应用程序。我们通过查询字符串在页面之间传输数据。在一种情况下,我们将大数据移动到大约 7000 个字符的下一页。我们收到查询字符串长度错误。然后我们尝试增加 Web.config 中的 maxquerystring 长度。现在它没有抛出任何错误,但 IE 将 URL 减少到 2k 并打开页面。完整的查询数据不会传递到页面。有没有增加IE URL长度的选项?
【问题讨论】:
-
糟糕的设计。最好找到其他方式来传输您的数据。
-
我同意@Aristos 查询字符串的最大长度也因浏览器而异 - 请参阅stackoverflow.com/questions/812925/… 你不能使用数据库甚至会话状态来保存数据吗?
-
请发布数据而不是QueryString或使用server.transfer方法
-
是的,我们知道这不是最好的主意。但是我们不能使用会话。 bcoz 将打开多个窗口。我们不能每次都访问数据库。还有其他选项可以将数据移动到下一页吗?
-
死路一条,查询字符串限制是浏览器本身内置的。您必须重构代码,而不是在查询字符串上传递数据。有很多替代方案,大多数“故障安全”是将所有数据存储在数据库中,并且只在查询字符串或 cookie 上传递唯一的用户/访问者 ID。
标签: asp.net internet-explorer .net-4.0 query-string