我有一堂电影:
internal class Movie
{
public string Name { get; set; }
public string Year { get; set; }
}
我有这个代码:
var Movies = CreateMovies(); //IEnumerable<Movie>
var sorter = new Sorter<Movie>();
sorter.AddSort(Movies, m => m.Year , a=>a.Name ,.....as many as I want....);
这是Sorter课程:
class Sorter<T>
{
public void AddSort(IEnumerable<T> movs, params Expression<Func<T, object>>[] funcs)
{
/*...*/
movs.OrderBy(d=>d.); //<----- here is the problem : where is the columns ?
}
}
问题 :
当我需要智能时d,它会告诉我:

我不明白为什么T不推断为Movie:
看看有多少位置在推断这T是一个Movie:

我怎样才能让那些电影领域出现,而不改变Ienumerable<Movies>?