我試圖從創建腳本的人員定義的SQL腳本(使用正則表達式的C#中)中選擇一個值,然後可以在需要時由其他人員替換。SQL中未使用的字符/字符組合
我設法做到這一點使用大於和小於兩次的符號,例如, SELECT * FROM users WHERE username = '<<username>>'
,這工作得很好。
我遇到的問題是,當我去這個腳本添加到數據庫中存儲它(使用aspx頁面),它引發以下錯誤:
System.Web.HttpRequestValidationException: A potentially dangerous Request.Form value was detected from the client (ctl00$MainBody$tstScriptTextBox="...username = '<<username>>';").
我的問題是:有沒有其他符號不會在SQL腳本中使用,並且不會對Regex造成任何問題?
FWIW,我用花括號代替模板中的「snippets」:''{username}''。 – HABO
這是正確的,它不喜歡無效的字符..也如果你在.net 4.0中這樣做,當你驗證頁面時,在版本中有一個錯誤,它的值設置爲false ..嘗試不同的字符,這是一個解決方案 – MethodMan
ValidateRequest =「false」 在.NET 4.0中無法正常工作,另一種方式是設置Validation = true並執行諸如'http://dotnetfish.blogspot.com/2007 /08/systemwebhttprequestvalidationexception.htmlServer.Html.Encode(your text); –
MethodMan