System.Collection.IList を既知の型にキャストせずに注文することは可能ですか?
としてリストを受け取り、object
それを IList にキャストしています
var listType = typeof(List<>);
var cListType = listType.MakeGenericType(source.GetType());
var p = (IList)Activator.CreateInstance(cListType);
var s = (IList)source;
利用できる場合と利用できない場合があるIDに基づいて注文したいと思います。
私がプロデュースしたいのは次のようなものです:
if (s.First().GetType().GetProperties().where(m=>m.Name.Contians("Id")).FirstOrDefault != null)
{
s=s.OrderBy(m=>m.Id);
}
ただし、s には拡張メソッド「Order」がなく、拡張メソッド「First」もありません。