如何重新编号对象集合中的字段?

时间:2014-01-23 07:45:59

标签: c#

鉴于此课程:

public class TS
{
    public int i { get; set; }
    public string t { get; set; }
}

我有一个变量ts,其中包含TS个对象的列表。 TS个对象 值i在10到99之间变化。我不需要重新排序对象。只需更改i

的值即可
IList<TestQuestionHeaderBase> ts;

如何使用创建TS个对象的新列表 从1开始并增加到最后一个对象的数字?

1 个答案:

答案 0 :(得分:3)

你可以这样做:

ts = ts.Select((x,i) => new TS { i=i+1, t=x.t }).ToList();

它将使用LINQ中的Select创建从1开始索引的新对象列表(也创建新对象)。或者不创建新对象并保留列表(但需要将其从IList更改为List):

var i=0;
ts.ForEach(x=> x.i=i++);