2015-03-31 144 views
0
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:GSProjectConnectionString %>" SelectCommand="SELECT * FROM [Table] where Owner like '%@username%' "> 
      <SelectParameters> 
       <asp:Parameter Name="username" Type="String"/> 
      </SelectParameters> 
     </asp:SqlDataSource> 

以上是我的代碼,其中我試圖使用在.cs文件中定義的變量用戶名。在sql數據源中選擇參數

它不需要用戶名的值。

我哪裏錯了?

任何想法的人?

+0

好 - 運行 - 它的工作原理? – 2015-03-31 05:16:47

+0

不,它不是。它不需要用戶名的價值。 – TRY123 2015-03-31 05:18:45

+0

嘗試將SelectCommand更改爲SelectCommand =「SELECT * FROM [Table]其中所有者喜歡@username」> – uowzd01 2015-03-31 05:35:48

回答

1

改變它作爲

SelectCommand="SELECT * FROM [Table] where Owner like @username 

當您設置的參數值,你可以添加「%%」下面

SqlDataSource1.SelectParameters["username"].DefaultValue = string.Format("%{0}%", paramvalue); 
+0

它的工作原理。謝謝。真是好奇,你是怎麼搞清楚的? – TRY123 2015-03-31 05:47:25

+0

@username和'@username'之間有區別,第二個不再是參數,它將視爲字符串值。 – Damith 2015-03-31 05:49:15

+0

我明白了.Got it :) – TRY123 2015-03-31 05:51:26