Nic*_*cht 7 c# generics compiler-errors typeof
给出下面的示例代码,任何人都可以解释为什么第一次typeof()调用成功但第二次失败?无论它们是类还是接口都无论如何都无关紧要.
interface ITestOne<T1>
{
T1 MyMethod();
}
interface ITestMany<T1, T2>
{
T1 MyMethod(T2 myParameter);
}
void Main()
{
var typeOne = typeof(ITestOne<>); //This line works
var typeTwo = typeof(ITestMany<>); //Compile error
}
Run Code Online (Sandbox Code Playgroud)
您需要让编译器知道您正在寻找具有两个泛型参数的泛型类型.在尖括号之间添加逗号:
var typeTwo = typeof(ITestMany<,>);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
64 次 |
| 最近记录: |