我有以下的類和方法:如何在泛型的where子句中指定泛型類?
public class MyGenericClass<T>
where T : class
{
}
public class MyClass
{
public TGen MyMethod<TGen>(TGen myGenClass)
where TGen : MyGenericClass<T>
where T : class
{
return myGenClass;
}
}
然而,這給出了一個錯誤,因爲它無法化解的MyMethod符號T
。我寧願不必有MyMethod<TGen, T>
,因爲它對我來說似乎有點多餘。這可能嗎?
但是'MyMethod'中沒有'T'類型的參數。我不明白你想要做什麼。 – 2012-04-19 16:01:44
我想有'公共TGen MyMethod(TGen myGenClass)其中TGen:MyGenericClass <>' –
cm007
2012-04-19 16:03:01
我再次,我不明白你想用'MyGenericClass <>'傳達什麼。你爲什麼認爲'MyGenericClass'的類型參數會以任何方式被推斷?推斷出什麼? – 2012-04-19 16:04:01