次のようなクラス定義があります。
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
(この場合は文字列を分割するつもりです) 2 番目の項がある場合はその項で並べ替え、単語が 1 つしかない場合は文字列全体で並べ替えます)。
私は2つのことについて確信が持てません:
- またはを使用する必要があります
IComparer
かIComparable
? - 並べ替えの順序を決定したら (私はそれを行うことができます)、メソッドの出力が を表す int のリストになるようにするにはどうすればよいですか
ObjectID
。