我有一個類定義是這樣的:比較的對象,並返回列表
public class MyObjectModel
{
public int ObjectID { get; set; }
//for when the user's data is split in 2 fields
public string FirstName { get; set; }
public string LastName { get; set; }
//for when the user's data is all in one field
public string FirstLastName { get; set; }
}
我有這些MyObjectModel
的名單,我想,因爲這涉及到檢查,如果通過名稱與自定義排序過程中對它們進行排序該數據包含LastName
(在這種情況下使用LastName
排序)或FirstLastName
(在這種情況下,我將打破字符串並對第二項進行排序,如果有的話,或者只有一個字,如果只有一個字)
我不確定兩件事:
- 應該使用
IComparer
或IComparable
? - 一旦它確定排序的順序(我可以做到這一點),我該如何做到這一點,以便該方法的輸出是代表
ObjectID
的整數列表。
根據您使用的C#版本,您可以使用Linq對其進行排序。 –
對於精度,我使用的是c#4. – frenchie