以前只知道@在C#中为了写文件路径的\不要加转义符而在前面加上@标识符,没想到@还有其他的作用

1.忽略转义字符

例如

string fileName = "D:\\文本文件\\text.txt";

使用@后

string fileName = @"D:\文本文件\text.txt";

2.让字符串跨行

string strSQL = "SELECT * FROM HumanResources.Employee AS e"
 + " INNER JOIN Person.Contact AS c"
 + " ON e.ContactID = c.ContactID"
 + " ORDER BY c.LastName";
 
使用@后
string strSQL = @"SELECT * FROM HumanResources.Employee AS e
 INNER JOIN Person.Contact AS c
 ON e.ContactID = c.ContactID
 ORDER BY c.LastName";
 

3.在标识符中的用法

C#是不允许关键字作为标识符(类名、变量名、方法名、表空间名等)使用的,但如果加上@之后就可以了

例如

public static void @static(int @int)
 {
   if (@int > 0)
   {
    System.Console.WriteLine("Positive Integer");
   }
   else if (@int == 0)
   {
    System.Console.WriteLine("Zero");
   }
   else
   {
    System.Console.WriteLine("Negative Integer");
   }
}