使用LINQ时遇到异常,它会显示`1
一些表达式。
例如在堆栈跟踪中,我得到类似这样的语句:
System.Linq.Table`1.Enumerable();
同样在一些匿名声明中我也是如此。我的一个大三学生问我这个问题,但我不能给他满意的答复。所以我需要知道。 `1
代表什么?
答案 0 :(得分:16)
C#将泛型类型标记为
System.Linq.Table<T>
VB将它们标记为
System.Linq.Table(Of T)
在类型对象上调用ToString既不产生C#也不产生VB语法;它产生:
System.Linq.Table`1
其中1表示类型参数的数量。
在C#中类似:
Foo<T>.Bar<U>
会产生字符串
Foo`1+Bar`1