Меня раздражало, потому что я хотел бы назвать универсальный метод из другого универсального метода ..Вызов шаблонный метод с общим методом
Вот мой код:
public List<Y> GetList<Y>(
string aTableName,
bool aWithNoChoice)
{
this.TableName = aTableName;
this.WithNoChoice = aWithNoChoice;
DataTable dt = ReturnResults.ReturnDataTable("spp_GetSpecificParametersList", this);
//extension de la classe datatable
List<Y> resultList = (List<Y>)dt.ToList<Y>();
return resultList;
}
Так ведь когда Я называю ToList, который является расширением класса DataTable (узнало Here)
компилятор говорит, что Y не является неабстрактным типом, и он не может использовать его для .ToList <> общего метода ..
Что я делаю неправильно?
Спасибо за чтение ..
Может начаться со скомпилированного кода? Я предполагаю, что это должно быть 'dt.AsEnumerable(). ToList()' –
@Henk Holterman: OP, похоже, использует собственный метод расширения, а не метод LINQ to Objects 'Enumerable.ToList'. – Ani
@Ani: Я так думаю, но это было бы что-то сказать. –