声明实现通用接口的C#类

声明实现通用接口的C#类,c#,class,generics,interface,implements,C#,Class,Generics,Interface,Implements,假设我有一个空接口类IBaseInterface,它仅用于将实现类“标记”为接口本身 有没有办法做这样的事 例如: public class MyClass : T where T : IBaseInterface { } 不是那样的,没有。我强烈建议你使用一种构图模式来尝试并实现你所尝试的一切。作为替代方案,您可能会发现(或其他代理解决方案)是您想要的。不是这样,没有。我强烈建议你使用一种构图模式来尝试并实现你所尝试的一切。作为替代方案,您可能会发现(或其他代理解决方案)正是您想要的。不,您

假设我有一个空接口类IBaseInterface,它仅用于将实现类“标记”为接口本身

有没有办法做这样的事

例如:

public class MyClass : T where T : IBaseInterface
{
}

不是那样的,没有。我强烈建议你使用一种构图模式来尝试并实现你所尝试的一切。作为替代方案,您可能会发现(或其他代理解决方案)是您想要的。

不是这样,没有。我强烈建议你使用一种构图模式来尝试并实现你所尝试的一切。作为替代方案,您可能会发现(或其他代理解决方案)正是您想要的。

不,您不能这样做,因为在声明类时,编译器必须知道类实现了哪个接口。您可以将泛型参数用于接口,但必须指定实际接口。

不,您不能这样做,因为在声明类时编译器必须知道类实现了哪个接口。您可以将泛型参数用于接口,但必须指定实际接口。

您声明的类型甚至不是泛型的。大概是这样的:

class MyClass<T> : T where T : IBaseInterface
在哪里
ClassType
是一个
enum
可以工作。

您声明的类型甚至不是泛型。大概是这样的:

class MyClass<T> : T where T : IBaseInterface
在哪里
ClassType
是一个
enum
可以工作的类型。

泛型类型如何工作?在.NET中,如果您只想标记/标记一个类的特定行为,最好使用属性而不是空接口。泛型类型如何工作?在.NET中,如果您只想标记/标记一个类,最好使用属性而不是空接口对于特定的行为。