如何将 C# 中的“where”关键字与通用接口和继承一起使用

2024-01-13

我想要实现的是:

  • 声明一个泛型类 (),
  • 将“T”限制为实现 IMySpecialInterface 的类型(其中“X”不是已知类型),
  • 并让该类继承父类。

举一个不正确的例子:

public class MyClass<T> : MyParentClass where T : IMySpecialInterface<X>
{
...
}

实现此目的的正确语法是什么?

Thanks.


在不知道类型的情况下不能使用泛型,除非您在运行时创建了类型。

您最适合的是:

public class MyClass<T, U> : MyParentClass where T: IMySpecialInterface<U>
{

}

UPDATE或者你可以使用dynamic?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 C# 中的“where”关键字与通用接口和继承一起使用 的相关文章

随机推荐