不包含带'1'参数的构造函数

时间:2013-08-07 19:35:41

标签: c# winforms

我已经搜索了一些关于此的话题,但我仍然卡住了,我对c#相当新,这个错误开始让我头疼。我正在尝试初始化列表,但我不断收到该错误消息。非常欢迎任何帮助。

public static List<BookOperator> CreateBookOperators()     
    {
         List<BookOperator> ops = new List<BookOperator>();

        BookOperator op = new BookOperator(ops);
        ops.Add(op);

        return ops;
   }

3 个答案:

答案 0 :(得分:5)

这意味着您的班级BookOperator没有任何构建者正在进行争论。如果您可以显示BookOperator的代码,那将会很有帮助。我想你需要这个,我这么说是因为你当前的代码没有任何意义。您将列表作为参数传递给类,并将同一个类添加到列表中。循环对我来说没有意义

 BookOperator op = new BookOperator();
 ops.Add(op)

答案 1 :(得分:2)

如果BookOperator对象需要知道它的所有者,那么BookOperator在其构造函数中至少需要一个参数。

public class BookOperator
{
    public List<BookOperator> BookOperators { get; private set; }
    public BookOperator(List<BookOperator> bookOperators)
    {
        BookOperators = bookOperators;
    }
}

答案 2 :(得分:1)

在我看来,没有理由尝试将列表传递给图书运营商。甚至钱说:

public static List<BookOperator> CreateBookOperators()     
{
    List<BookOperator> ops = new List<BookOperator>();
    BookOperator op = new BookOperator();
    ops.Add(op); 
    return ops;
}

或更简洁:

public static List<BookOperator> CreateBookOperators() {
    return new List<BookOperator> {
        new BookOperator()
    };
}