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

Constructor for a subclass of List<T> C#

这是我的 class:

public class CustomList: List<SomeType>{

 SomeType myList;

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

//some methods
}

我这样初始化它:

CustomList myCustomList = new CustomList(someList);

然而,在访问列表的第一个成员 (myCustomList[0]) 时,我得到: AurgumentOutOfRangeException 错误。

我在自定义列表构造函数 and/or 初始化中做错了什么吗?

感谢您的帮助。

编辑:

SomeType 是 class 由一些 public 变量组成:

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
}

正如 Alexei 在评论中指出的,在 C# 中使用此语法调用基础 class .ctor 的替代方法:

public class CustomList : List<SomeType> {
    public CustomList(List<SomeType> list) : base(list) { ... }
}