List子类的构造函数<;T>;C#

List子类的构造函数<;T>;C#,c#,list,class,constructor,initialization,C#,List,Class,Constructor,Initialization,这是我的班级: public class CustomList: List<SomeType>{ SomeType myList; public CustomList(List<SomeType> list){ myList = list; } //some methods } 但是,在访问列表的第一个成员(myCustomList[0])时,我得到: AurgumEntoFrangeException错误 我的自定义列表构造函数和/或初始化是否有任何错

这是我的班级:

public class CustomList: List<SomeType>{

 SomeType myList;

 public CustomList(List<SomeType> list){
  myList = list;
 }

//some methods
}
但是,在访问列表的第一个成员(
myCustomList[0]
)时,我得到: AurgumEntoFrangeException错误

我的自定义列表构造函数和/或初始化是否有任何错误

谢谢你的帮助

编辑:

SomeType是由一些公共变量组成的类:

public class SomeType{
 public string title;
 public string campaign;
}

我假设您希望将.ctor参数添加到列表中。所以加上它

public class CustomList: List<SomeType>{

 public CustomList(List<SomeType> list){
  this.AddRange(list);
 }

//some methods
}
公共类自定义列表:列表{
公共客户列表(列表){
此.AddRange(列表);
}
//一些方法
}
正如Alexei在评论中指出的,在C#中使用这种语法调用基类.ctor的另一种方法是:

公共类自定义列表:列表{
公共客户列表(列表):基本(列表){…}
}

我假设您希望将.ctor参数添加到列表中。所以加上它

public class CustomList: List<SomeType>{

 public CustomList(List<SomeType> list){
  this.AddRange(list);
 }

//some methods
}
公共类自定义列表:列表{
公共客户列表(列表){
此.AddRange(列表);
}
//一些方法
}
正如Alexei在评论中指出的,在C#中使用这种语法调用基类.ctor的另一种方法是:

公共类自定义列表:列表{
公共客户列表(列表):基本(列表){…}
}

我看不到您要添加到
列表中的位置。如果
myList
是公共的,则可以通过
myCustomList.myList
访问.ctor参数值。我看不到要添加到
列表的位置。如果
myList
是公共的,您可以通过
myCustomList.myList
访问.ctor参数值。您是对的,但是
list
不是一个列表-正如我的代码注释所指出的那样。@Kourosh所以现在您需要
this.AddRange(list)
:)
base(list)
会更好。。。但是
AddRange
也可以。@AlexeiLevenkov:所以<代码>公共自定义列表(列表):基本(列表){…}
?您能告诉我如何将列表转换为某种类型吗?您是对的,但是
列表
不是一个列表-正如我的代码注释所指出的那样。@Kourosh所以现在您需要
这个。AddRange(列表)
基本(列表)
会更好。。。但是
AddRange
也可以。@AlexeiLevenkov:所以<代码>公共客户列表(列表):基本(列表){…}
?您能告诉我如何将列表转换为某种类型吗?
public class CustomList : List<SomeType> {
    public CustomList(List<SomeType> list) : base(list) { ... }
}