0

我在 if 语句中有这段代码,结果为false,我不知道为什么

&& (typeof(TResponse).Equals(typeof(MediatorResponse)))

使用Equals,因为我打算通过引用进行比较

我试图把它们放在手表上,这是我的线索

点击查看

typeof(TResponse)似乎有一段MediatorResponse'1时间typeof(MediatorResponse)似乎MediatorResponse是这两个仍然是同一类型吗?

为什么视觉工作室将 1 放在另一个上?

4

1 回答 1

1

如果一个或多个泛型,并且泛型类型具有不同数量的泛型参数,C# 允许您拥有具有相同名称的不同类型。例如,以下都是不同的类型:

class Foo{}
class Foo<T>{}
class Foo<T1, T2>{}

后跟数字的反引号字符用于泛型类型以生成唯一名称,并指示该类型具有的泛型参数的数量。因此,在上面的示例中,名称将是:

class Foo{}            // Name is Foo
class Foo<T>{}         // Name is Foo`1
class Foo<T1, T2>{}    // Name is Foo`2
于 2020-03-04T10:07:23.633 回答