2014-09-13 60 views
0

我想知道如何將兩個QueryStringParameter從兩個不同的頁面傳遞到SelectCommand
如何在SelectCommand中使用兩個QueryStringParameter

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:con %>" SelectCommand="SELECT * FROM [admin_video] where [email protected]_id OR [email protected]_name" > 
    <SelectParameters> 
     <asp:QueryStringParameter Name="c_id" QueryStringField="id1" DbType="Int32"/> 
     <asp:QueryStringParameter Name="c_name" QueryStringField="id2" /> 

    </SelectParameters> 
</asp:SqlDataSource> 

頁:1
<a href="page1.aspx?id1=<%# Eval("c_name") %>"
頁:1把
<a href="page2.aspx?id2=<%# Eval("c_id") %>"
一切都很好,但是當我使用一個只有它的工作,但是當我使用它都無法正常工作。

回答

1

您需要修改SQL命令是這樣的:

SELECT * FROM [admin_video] where c_id=IsNULL(@c_id,c_id) OR c_name=IsNULL(@c_name, c_name) 
+0

我從兩個不同的頁面傳遞兩個字符串,因爲有一些條件。 – 2014-09-13 05:46:29

+0

然後你將需要分享更多關於你的意思是兩頁。您可以使用第2頁中的會話變量,您可以在第2頁上閱讀 – codebased 2014-09-13 05:59:54

+0

我在我的問題中寫道我正在傳遞來自兩個不同頁面的'StringPerameter',並且您可以看到'SelectCommand'。數據庫的兩個屬性都在同一個表中但我想匹配其中的一個字符串,因爲我在查詢中編寫了'OR'。用戶可以從另外兩個具有queryString.Session.So的頁面訪問該頁面,告訴我如果用戶想用'ID1'從'Page1'訪問這個頁面'匹配'C_ID'或''Page2'' ID2'匹配'C_NAME' .. – 2014-09-13 06:07:50

相關問題