【C#】@的作用
阿新 • • 發佈:2018-12-11
前言
在敲三層的時候遇到了很多加@的識別符號,並不是之前在看C#視訊的時候加@是忽略轉義字元,能讀出檔案地址用法。然後我三層中程式碼前的@去掉了,還是可以執行,沒有報錯,那麼總結一下@的作用吧。
忽略轉義字元
例:
string path="D:\abc\";
\是轉義字元,所以這個地方要@忽略轉義字元,加了@告訴系統,@後邊的字串當作正常的字串就好不用轉義:
string [email protected]"D:\abc\";
擴充套件不用@怎麼讀路徑:string path="D:\\abc\\";要多加個斜槓
防止換行,避免sql防注入
使用字串拼接sql語句,很容易造成sql注入,常用的做法是使用引數傳遞,後邊不管換多少行,都表示一個字串,如果不加@換行寫就會出錯。
cmd.CommandText = @"insert INTO SCORES(ID,UserName,Score)
Values(@ID,@UserName,@Score) ";
在識別符號中的用法
@加在變數前面,表示後面接的是變數,使變數名與關鍵字不衝突嗎,這種方法稱為“逐字識別符號”。
//int int =1;是不能聲名的
int @int =1;//@是關鍵字不衝突,可以聲明瞭
cmd.Parameters.Add(new SqlParameter("@UserName", userName));//為了更好的區分變數和實體,不加也不錯