2012-01-19 38 views
0

我有一些使用C#傳遞給ASP.NET頁面的值,但我需要將這些值設置爲SQL數據源的參數。我剛剛開始使用C#和ASP.NET,所以任何幫助將不勝感激。嘗試將動態值傳遞給SQL數據源控件中的參數

數據源代碼,我有如下:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
       ConnectionString="<%$ ConnectionStrings:PRS_atlantaConnectionString %>" 
       SelectCommand="SELECT [ExtNum] FROM [EXTINFORMATION] WHERE (([LastName] = @LastName) AND ([FirstName] = @FirstName))"> 
        <SelectParameters> 
         <asp:Parameter DefaultValue="DYNAMIC_VALUE_HERE" Name="LastName" Type="String" /> 
         <asp:Parameter DefaultValue="DYNAMIC_VALUE_HERE" Name="FirstName" Type="String" /> 
        </SelectParameters> 
      </asp:SqlDataSource> 

目前我使用下面的代碼顯示在頁面上的值:

<%= FirstName %> 
<%= LastName %> 

任何幫助再次將不勝感激。

+0

我認爲這是你在找什麼? http://stackoverflow.com/questions/485821/how-to-pass-variable-to-selectcommand-of-sqldatasource –

+0

爲什麼你使用sqldatasource?通過代碼使用sqlcommands更可靠 –

回答

0

您可以嘗試添加以下到您的代碼隱藏頁:

SqlDataSource1.SelectParameters.Add("some_other_value",System.Data.DbType.sometype,"it's value as string here"); 

添加完畢後,你會:

SqlDataSource1.SelectParameters.Add("LastName", yourdynamicstringvalue); 
    SqlDataSource1.SelectParameters.Add("FirstName", yourdynamicstringvalue); 

或者,如果您有字符串以外的東西,你與比較需要刪除下面的塊,因爲它不再需要:

<SelectParameters> 
     <asp:Parameter DefaultValue="DYNAMIC_VALUE_HERE" Name="LastName" Type="String" /> 
     <asp:Parameter DefaultValue="DYNAMIC_VALUE_HERE" Name="FirstName" Type="String" /> 
    </SelectParameters> 
相關問題