У меня есть следующий код:
public static class CardView {
public static object Column<TModel, TResult>(Func<TModel, TResult> field) {
return null;
}
}
public class Person
{
public string Name { get; set; }
public bool Gender { get; set; }
}
void Main()
{
var model = new Person() { Name = "Andre", Gender = true };
var b = CardView.Column(model => model.Name); // ERROR
// The type arguments for method 'UserQuery.CardView.Column<TModel,TResult>(System.Func<TModel,TResult>)' cannot be inferred from the usage. Try specifying the type arguments explicitly.
}
По какой-то причине он не может вывести универсальные типы для метода Column
. Мне нужно знать почему. Я не могу отказаться от вывода типов и указать типы самостоятельно, потому что это всего лишь пример большой проблемы, где он будет незаменим.
РЕДАКТИРОВАТЬ
Я неправильно написал код = / просто исправил