我在这里缺少什么,编译器是否应该能够明确地推断出这里的类型?
abstract class Entity {}
class Model<TEntity> where TEntity : Entity {}
class Helper<T> {}
class Test {
static void Method<TModel, TEntity>(Helper<TModel> param)
where TModel : Model<TEntity>
where TEntity : Entity
{
}
class Foo : Entity {}
public static void Main ()
{
Method(new Helper<Model<Foo>>());
}
}
我收到以下错误:
a.cs(20,3):错误CS0411:方法的类型参数 &#39; Test.Method(助手)&#39;无法推断 用法。尝试明确指定类型参数。
指定呼叫站点的类型有效,但我不必这样做。