2009-12-04 113 views
0

有沒有辦法在DataView上使用參數化過濾器?有沒有辦法在DataView上使用參數化過濾器?

我想根據用戶的搜索條件過濾DataView中的行。在進行SQL查找時,我可以使用參數來幫助解決兩個奇怪字符的問題,並防止SQL注入。雖然來自用戶的奇怪事物不會以我的視圖返回或傷害數據,但它會阻止搜索執行屬性。

如果我有DataView DV,我該如何設置行篩選器,以便輸入「test'test」不會越過搜索字符串dv.rowfilter= 「col like ‘」 & searchtext & 「’」

[編輯]

由於這僅僅是不可能的,我決定使用Linq使用正則表達式。

回答

1

我不認爲有可能使用參數DataView。你可以做一個簡單的字符串替換來轉義單引號。

dv.rowfilter= 「col like ‘%」 & searchtext.Replace("'", "''") & 「%’」 

或使用String.Format這個,我個人認爲是一點點清潔。

dv.rowfilter= String.Format(「col like ‘%{0}%’」, searchtext.Replace("'", "''")); 
相關問題