我已經搜索谷歌,還沒有找到任何解決方案,我的問題呢。基本上我有一個評論的飼料是在圖像庫中設置的(類似於Facebook或者stackoverflow評論)。用戶可以發表評論並閱讀其他用戶發表的評論。這工作正常。但是,如果用戶試圖發表評論與撇號,我得到一個不錯的web應用程序錯誤:在SQL INSERT INTO中通過C#逃脫特殊字符
Incorrect syntax near 's'. Unclosed quotation mark after the character string ')'.
說我張貼到SQL註釋是81的。我想要一個解決方案,將逃脫所有特殊字符,以便無論用戶輸入什麼,不管是什麼,都不會出錯。
代碼隱藏
Fetcher.postUserComments(connectionString, imagePath, comments.ToString(), userId);
擷取
sqlCom.CommandText = "INSERT INTO dbo.Table(userId, imagePath, userComments, dateCommented) VALUES ('" + userId + "', '" + imagePath + "', '" + comments + "', '" + theDate + "')";
的數據類型爲字符串,我也試着做了.ToString()
但沒有運氣。預先感謝任何有用的意見。
不要這樣做!您打開自己的[SQL注入攻擊](http://msdn.microsoft.com/en-us/library/ff648339.aspx)。更改您的代碼,以便參數化所有查詢。否則你會後悔的。 –