按公共特性对不同对象的列表进行排序

本文关键字:对象 列表 排序 | 更新日期: 2023-09-27 18:27:27

我有一个List<object>,它包含三种类型GuestbookEntryCommentSectionEntry的实例。这三个类有一个共同的CreateDate属性。

有没有什么方法可以在不知道对象类型的情况下,对给定属性(我知道所有对象都有)的列表进行排序?

按公共特性对不同对象的列表进行排序

如果不能使这两个类派生自一个通用的Interface''Base Class,这是最好的面向对象解决方案
您可以将列表项强制转换为动态。

List<object> list = GetListFromSomeWhere();
var dynamicList = list.Cast<dynamic>();

然后对没有编译错误的动态列表进行排序:

dynamicList.OrderBy(x => x.CreateDate);