如何在不使用代碼隱藏的情況下處理SQL CONTAINS()
條件中的空ControlParameter值(以便返回所有結果)?看起來可能類似LIKE '%'
或WHERE (1=1)
。如何在ASP.NET SqlDataSource中處理空CONTAINS()查詢參數?
<asp:TextBox ID="tbSearch" runat="server" placeholder="Search" ></asp:TextBox>
<asp:SqlDataSource ID="SqlDataSourceA" runat="server" ConnectionString="..."
SelectCommand="SELECT [Columns] FROM [Table]
WHERE CONTAINS([Column],@searchText) ORDER BY [Time] DESC">
<SelectParameters>
<asp:ControlParameter Name="searchText" ControlID="tbSearch"
PropertyName="Text" DefaultValue="?" />
</SelectParameters>
</asp:SqlDataSource>
我知道,一個辦法是落後在代碼中創建一個動態查詢,但也許還有其他辦法做到這一點只標記。
編輯:ControlParameter默認值爲空字符串。
嗯,我實際上需要空字符串處理,因爲這是空的文本框的值。 – yosh
添加了空字符串的編輯...可能不是最有效的。 – cjb110
主要問題是我需要全文CONTAINS()搜索。否則它將是一個簡單的'WHERE Column LIKE'%''。 – yosh