2012-01-16 59 views
-2
<asp:SqlDataSource ID="DataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:DbConnection %>" 
    ProviderName="<%$ ConnectionStrings:DbConnection.ProviderName %>" 
    SelectCommand="select somefield from sometable where somefield in (?)"> 
    <SelectParameters> 
     <asp:Parameter DefaultValue="" Name="SomeFiedValue" /> 
    </SelectParameters> 
</asp:SqlDataSource> 

如何(從我的代碼隱藏中)爲上述SQL查詢中的參數分配值列表?帶有SQL IN子句參數的ASP.NET數據源

回答

0

試試這個。

protected void DataSource1_Selecting(object sender, SqlDataSourceSelectingEventArgs e) 
{ 
    e.Command.Parameters["SomeFieldValue"].Value = yourdata; 
} 

編輯:

根據您的回答,請看看下面的網站。它解釋了用DB2解決這個問題的一種方法。

http://www.tek-tips.com/viewthread.cfm?qid=1443561

基於該網頁上的評論,您的問題可能的解決方案可能是:

select somefield from sometable where somefield in 
(select ? from SYSIBM.SYSDUMMY1) 
+0

我得到一個值「someValue中」這方面的工作,但我怎麼得到它的工作與列表「someValue1,someValue2」? – jax 2012-01-16 04:10:03

+0

能否請您提供更多的信息,說明您希望做什麼,以便爲您提供最好的解決方案。 – 2012-01-16 04:40:57

+0

我想編寫一個像這樣的SQL:從sometable中選擇somefield('val1','val2','val3')中的某個字段,但是in子句中可以有任意數量的值。在一次調用中,它可能是3,另一次調用它可能是10.這就是爲什麼我想用一個變量作爲參數的caluse。 – jax 2012-01-16 04:54:01