【发布时间】:2011-10-04 05:56:07
【问题描述】:
是否可以订购可扩展的 expando 对象集合。
我找到了 this 关于如何对 ObservableCollection 进行排序的信息。但是,我需要知道 lambda 表达式中的属性名称。我不知道这一点,因为 expando 对象的属性是动态的。
【问题讨论】:
标签: c# sorting observablecollection
是否可以订购可扩展的 expando 对象集合。
我找到了 this 关于如何对 ObservableCollection 进行排序的信息。但是,我需要知道 lambda 表达式中的属性名称。我不知道这一点,因为 expando 对象的属性是动态的。
【问题讨论】:
标签: c# sorting observablecollection
您的 ExpandoObject 最终需要实现 IComparable<T> 或 IComparable 才能使用您引用的链接中的技术(假设您指的是已接受答案中提到的文章)。
如果你指的是 ExpandoObject 的this version,它并没有实现这两个接口。因此,直接的答案是实现这两个接口之一。
从根本上说,您需要了解如何比较两个不同的 ExpandoObject 实例,才能知道哪个在另一个之前排序。
如果您的 ExpandoObjects 是完全动态的(而不是说具有某些动态扩展的公共属性),那么您打算如何在逻辑上比较两个实例以进行排序?如果您可以提供有关您的问题的更多详细信息,我可以提供更具体的答案。
【讨论】: