我有一个对象列表,我想按对象的ID对其进行排序,然后所有信息都必须写入文件中? [C#]
我不希望打印对象我只想要一个对列表进行排序的方法,这样我就可以调用Sort方法并使用我的Serialize类,它将已排序的列表放入文件中。
如果您需要任何其他代码,请告诉我们。
提前致谢。
这是我的类,它创建一个列表,以便我可以将对象放入其中。
[Serializable]
class ListOfClasses
{
public List<Classes> fitnessClasses { get; set; }
public ListOfClasses()
{
fitnessClasses = new List<Classes>();
}
public void DeleteClass(Classes c)
{
fitnessClasses.Remove(c);
}
public void AddClass(Classes c)
{
fitnessClasses.Add(c);
}
答案 0 :(得分:1)
以下是一个示例,假设类Classes
具有ID
属性:
fitnessClasses.Sort((a, b) => a.ID.CompareTo(b.ID));
答案 1 :(得分:0)
您可以使用:
fitnessClasses.OrderBy(item => item.ID);
答案 2 :(得分:0)
使用以下任何一种方法:
使用LINQ排序
IEnumerable<Class> sortedClasses =
from fitnessClass in fitnessClasses
orderby fitnessClass.ID
select fitnessClass;
使用System.Linq.Enumerable
上的扩展方法排序IEnumerable<Class> sortedClasses =
fitnessClasses.OrderBy(fitnessClass => fitnessClass.ID);
在List类上使用Sort方法,它实际上会修改列表中项目的顺序。
fitnessClasses.Sort(
(fc1, fc2) => Comparer<int>.Default.Compare(fc1.ID, fc2.ID) );