【发布时间】:2010-02-20 05:59:02
【问题描述】:
假设我们有一个通过页面 URL 传入的值。示例:www.test.com/page.aspx?&Key=Val。 Val 可以通过 Request.Querystring("Key") 获取。
将 QueryString 值分配给 ASPX 页面上定义的 SqlDataSource 的参数是否存在公认的最佳实践?
我知道的选项:
- 不要在 ASPX 文件中包含参数。通过代码隐藏直接添加它们——并在添加时分配 Param.DefaultValue。
- 在页面加载中设置 Param.DefaultValue(代码块 2)
这两个都使用 DefaultValue,这是一个显然不打算以这种方式使用的属性。 ASP.NET 霸主们是否有推荐的方法来完成这项常见任务?
代码块 1
<SelectParameters>
<asp:Parameter Name="StoreID" Type="String" DefaultValue="-1" />
</SelectParameters>
代码块 2:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
SD1.SelectParameters("StoreID").DefaultValue = Request.QueryString("StoreID")
End Sub
【问题讨论】:
-
我了解其他问题已经涵盖了实现此任务的各种方法。这个问题更符合 ASP.NET 团队打算如何执行此任务。谢谢