我有一个Versions
的列表。获取列表中的项目大于所选项目
List<Version> versions = GetVersions();
而且我有一个selectedVersion
。
我的Version
类实现IComparable
。
public class Version : IComparable<Version>
所以我可以做versions.Sort()
。在这一点上,我的Version
对象在列表中排序,比如Name
属性。
从Versions
的列表中,我想获得比我的selectedVersion
更高的物品。我如何用Linq做到这一点?
我试过的是将selectedVersion
改为IComparable
然后使用CompareTo
但我得到了InvalidCastException
错误。
IComparable comparable = (IComparable)selectedVersion;
if(comparable.CompareTo(selectedVersion)) > 0
你为什么强制转换为'IComparable'时版本只实现了IComparable接口''? –
IComparable是一种比较对象的方法,而selectedVersion是一种类型的版本。 – jdweng
@PatrickHuizinga指出。我应该投射到'IComparable' –
jmc