应该注意的是,列表中每个对象的字段之间可能无法区分,最好的区分方法是通过ID。如果对象的ID也可以作为该列表中的索引,那将非常有帮助。
//...
receiveData(ClassA obj2Add) {
maplist.Insert(0, obj2Add); //Defined as a Maplist, which extends List<ClassA>, assume with no other fields of relevance
Console.WriteLine(obj2Add.Index); //Should display zero.
}
class ClassA {
string mapname {get;set;}
int Index; //Would reference this ClassA's position in maplist.
}
有什么可以添加到ClassA或Maplist类中以实现此目标的东西吗?
答案 0 :(得分:0)
仅当您的ClassA ID从0开始时,然后您才能执行以下操作:
receiveData(ClassA obj2Add) {
maplist.Insert(0, obj2Add);
maplist=maplist.OrderBy(o=> o.Index).ToList();
Console.WriteLine(obj2Add.Index);
}
您为什么仍然需要它?我猜想您想通过maplist[id]
如果是这种情况,那么我建议使用
maplis.FirstOrDefault(f=>f.Index==id);