我们可以在List <T>
中使用两个不同的类型实参还是在类类型内添加一个以上实参?
例如:
public class ClassA
{
public int a {get;set;}
public int b {get;set;}
}
我需要在列表中使用更多属性,而无需编辑ClassA
public string c {get;set;}
public List<ClassA, c> list = new List<ClassA, c>
我应该能够访问列表中的c
item[0].a
item[0].b
item[0].c
答案 0 :(得分:7)
如果您使用的是最新的C#版本,则可以使用元组:
Components
您也可以为其命名
public List<(ClassA, string)> list = new List<(ClassA, string)>
但是您不能直接访问ClassA内部的任何内容,必须使用第一个对象的名称。
答案 1 :(得分:0)
Dictionary<String,ClassA> myDictionary= New Dictionary<String,ClassA>();
Foreach(var k in myDictionary.Keys)
Debug.WriteLine(myDictionary[k]);// accesses (Value) ClassA objects
答案 2 :(得分:-1)
感谢帮助人员,这是很大的帮助。 但是在我的鳕鱼中,我使用了新课程:
public classB
{
public classA cA {get;set;}
public str c {get;set;}
}
List<B> i can access any data i need it.