Compiler Error CS1921
与“method”最匹配的重载方法具有对于初始值设定项元素而言错误的签名。可初始化的 Add 必须是可访问的实例方法。
在尝试对没有公共非静态 Add 方法的类使用集合初始值设定项时,会生成此错误。如果 Add 方法因其保护级别(private、protected 和 internal)而不可访问,则会收到 CS0122,因此该错误可能意味着该方法被定义为 static。
下面的示例生成 CS1921:
// cs1921.cs
using System.Collections;
public class C : CollectionBase
{
public static void Add(int i)
{
}
}
public class Test
{
public static void Main()
{
var collection = new C { 1, 2, 3 }; // CS1921
}
}