更新:2007 年 11 月

错误消息

集合初始值设定项的最佳重载 Add 方法“name”具有一些无效参数。

若要支持集合初始值设定项,则类必须实现 IEnumerable 并具有公共 Add 方法。若要通过使用集合初始值设定项初始化类型,则 Add 方法的输入参数必须与您尝试添加的对象类型兼容。

更正此错误

  • 在集合初始值设定项中使用兼容类型。

  • 修改集合类型中 Add 方法的输入参数和/或辅助功能。

  • 添加一个新 Add 方法,该方法具有与您正在传入的类型相匹配的输入参数。

  • 使集合类成为泛型集合类,以使其可以具有一个接受任何传入类型的 Add 方法。

示例

下面的示例将生成 CS1950:

 复制代码
// cs1950.cs
using System.Collections;
class TestClass : CollectionBase
{
    public void Add(int c)
    {
    }
}

class Test
{
    static void Main()
    {
        TestClass t = new TestClass { "hi" }; // CS1950
    }
}

请参见

参考

对象和集合初始值设定项(C# 编程指南)