如 public static string f(Collection @params)

解决方案 »

  1.   

    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");
                }
            }显然你的情况应该是第一种
      

  2.   

    主要看6楼的解释,params这个在C#中是个关键字。