我目前正在使用列表中包含的對象類型中的'CompareTo'方法對C#列表進行排序。我想通過自己的WBS(工作分解結構)遞增的所有項目進行排序,我可以管理這個很好用下面的代碼:用兩個參數對列表進行排序使用CompareTo
public int CompareTo(DisplayItemsEntity other)
{
string[] instanceWbsArray = this.WBS.Split('.');
string[] otherWbsArray = other.WBS.Split('.');
int result = 0;
for (int i = 0; i < maxLenght; i++)
{
if (instanceWbsArray[i].Equals(otherWbsArray[i]))
{
continue;
}
else
{
result = Int32.Parse(instanceWbsArray[i]).CompareTo(Int32.Parse(otherWbsArray[i]));
break;
}
}
return result;
}
現在,我想能夠排序考慮多個參數,就像在項目名稱中按字母順序排列,然後再考慮第二個項目是WBS。我怎樣才能做到這一點?
如何使用'OrderBy()'方法? –
@JFB假設你使用的是.NET 3.5或更高版本,你需要在文件的'using'指令中包含:'using System.Linq;' – Mir
oops!現在我很尷尬。謝謝! –