看板 Web_Design 關於我們 聯絡資訊
※ 引述《wa007123456 (大笨羊)》之銘言: : 大家都知道 SQL注入是駭客web攻擊常見的方法之一 : 如果今天用C#來實作 : 要怎麼防止POST和GET有惡意字元? : 我唯一想到的頭緒是Global.asax : 但是不知如何實作 : 感謝各位先輩 常見的有幾個方法,其實推文大致上都說了 1.LinQ to SQL https://msdn.microsoft.com/zh-tw/library/bb386295(v=vs.110).aspx 看名稱就知道是用LinQ語法來操作SQL 不過簡單的CRUD還ok,如果是相當複雜的操作,就不是太好使用 2.ADO.NET Entity Framework (ADO.NET EF) 這文章相當多,如果對 SQL 不是很擅長的話,是一個很好的方法 透過 Mapping Objects to Data 來操作 DB 另外也有 LinQ to Entity 可以一起使用 對不習慣寫 SQL 的人是很好的一種做法 3.Sql Parameters https://msdn.microsoft.com/en-us/library/system.data.sqlclient. sqlcommand.parameters(v=vs.110).aspx 縮址: https://goo.gl/LuhTLc 透過 parameter 的方式來傳遞參數 值得注意的是 parameter 只能用在條件式的條件 如果要動態的改變查詢的 column 或 table 等是無法用 parameter 來傳遞的 此時可以合併使用第四種方法 4.先在程式中轉換,再組合成 Sql Command Text 簡單來說就是先用程式轉換過一次(if else 或 switch 等等) http://ideone.com/g85kLi 如果你習慣寫SQL的話,3+4是不錯的方法 對 SQL 比較不熟悉的話,使用ADO.NET EF也是很好的一種方法 已經一陣子沒寫C#了,這些是以前我會使用的方法,讓你參考一下 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.150.144 ※ 文章網址: https://www.ptt.cc/bbs/Web_Design/M.1444275186.A.1AE.html
LPH66: http://bobby-tables.com/csharp.html 10/08 12:13