C# 有没有办法拥有一个由自身组成的接口类

C# 有没有办法拥有一个由自身组成的接口类,c#,C#,在C#中,您是否可以为表示与其自身具有一对多关系的对象的类提供接口 以下是我的意思,尽管它没有编译: public interface IComposite<TX> where: typeof(TX)==typeof(this) { TX Parent { get; } IEnumerable<TX> Children { get; } } 公共接口IComposite其中:typeof(TX)=typeof(this) {

在C#中,您是否可以为表示与其自身具有一对多关系的对象的类提供接口

以下是我的意思,尽管它没有编译:

   public interface IComposite<TX> where: typeof(TX)==typeof(this)
   {
      TX Parent { get; }

      IEnumerable<TX> Children { get; } 
   }
公共接口IComposite其中:typeof(TX)=typeof(this)
{
TX父项{get;}
IEnumerable子项{get;}
}

例如,您的操作系统中可能有包含其他文件/文件夹的文件/文件夹。

不,没有办法做到这一点

此处指定了对泛型类型参数的唯一约束:

Eric Lippert写了一篇关于这种模式的好文章(是的,是有效的C#,但请注意其中的警告),您听说过复合设计模式吗?用C#示例进行解释。它避免了使用getter从外部遍历图形。我已经为一个工程应用程序编写了一些代码,其中他们需要复合模式,对象有一个多个子对象和一个父对象。我想知道您是否可以为更一般的情况创建一个接口,然后使用它帮助实用程序帮助构建对象。“我想知道您是否可以为更一般的情况创建一个接口”——您尝试过吗?该尝试的代码在哪里?代码做了什么?这和你想让它做的有什么不同?请看和