无法将公共列表作为方法的返回类型

Boh*_*ohn 0 c#

所以我有一个像下面这样的公共类,里面还有另一个嵌套的公共类

public class OuterClass
{ 
   // other stuff
   public class InnerClass
   {
      // some public get set properties 
   }

   public List<InnerClass>  InnerClasses;
}
Run Code Online (Sandbox Code Playgroud)

然后在我的存储库中,我有一个像这样的方法:

public InnerClass.InnerClasses MyGetMethod()
{
   // go get stuff from DB
}
Run Code Online (Sandbox Code Playgroud)

但是它不允许我这样做!我不能InnerClass.InnerClasses用作该方法的类型。为什么?

Mic*_*zyn 9

InnerClasses 是您班级中的字段,因此不能像类型一样使用。

您可能希望将其OuterClass.InnerClass作为输出类型或List<OuterClass.InnerClass>

//public OuterClass.InnerClass MyGetMethod()
public List<OuterClass.InnerClass> MyGetMethod()
{
  // go get stuff from DB
}
Run Code Online (Sandbox Code Playgroud)

  • @Bohn,您可以将** types **作为返回** type **,而不是属性,字段或方法 (3认同)