0

我想在 SQLDataSource 中创建一个动态选择命令。它应该从使用 get 发送的 URL 中读取一个值,抓取它并将其粘贴到 select 命令中。

我的 sqldatadource 在我的 aspx 页面中,看起来像这样

<asp:SqlDataSource ID="DS" Runat="server"

    SelectCommand="SELECT * FROM [dbo].[DS] WHERE [Install Process] = 'OCC' 
    AND [The Date] = @theDate"

    ConnectionString="<%$ ConnectionStrings:ApplicationServices %>">

</asp:SqlDataSource>

我想更新 Date 参数。我猜你不能在 Page_Load 中更新它,因为页面还没有加载,但老实说我不确定。我可以从 sqldatasource 或其他东西中调用代码隐藏函数吗?

这是我的代码隐藏。它目前在 page_load 方法中,但我猜我需要移动它?任何帮助都会很棒。谢谢

protected void Page_Load(object sender, EventArgs e)
{
    string theDate = Request.QueryString["TheDate"];

    DS.SelectParameters.Add("@theDate", theDate);
    DS.SelectParameters["theDate"].DefaultValue = theDate.ToString();
}
4

2 回答 2

0

您不能在此处记录的 SqlDataSource 的 aspx 声明中使用 SelectParameters 集合的 QueryStringParmater吗?

于 2012-06-14T13:10:06.490 回答
0

这是我用过的最好的示例之一,请检查页面中的 Assigning Parameter Values Programmatically。

http://www.asp.net/web-forms/tutorials/data-access/accessing-the-database-directly-from-an-aspnet-page/using-parameterized-queries-with-the-sqldatasource-cs

于 2012-06-14T13:19:29.490 回答