C#返回列表-可访问性不一致

C#返回列表-可访问性不一致,c#,list,C#,List,可能重复: 当我尝试将某个方法中的列表返回给从另一个类调用它的某个对象时,它给出了以下错误: 可访问性不一致:返回类型System.Collections.Generic.List比方法MyMethod(string,string,string,string,string,string,string,string,string)更难访问(string,string,string,string,string,string) 有什么想法吗?嗯,就像上面说的那样。您可能有一个列表,您正在从公共方法返

可能重复:

当我尝试将某个方法中的
列表
返回给从另一个类调用它的某个对象时,它给出了以下错误:

可访问性不一致:返回类型
System.Collections.Generic.List
比方法
MyMethod(string,string,string,string,string,string,string,string,string)更难访问(string,string,string,string,string,string)


有什么想法吗?

嗯,就像上面说的那样。您可能有一个
列表
,您正在从公共方法返回该
列表
。因此,编译器告诉您,即使人们可以看到这个方法,他们也看不到您试图返回的类型。您需要将方法或类型设置为内部或公共

例如:

internal class Foo {
}
public class Class1
{
    public List<Foo> Bar() {

    }
}
内部类Foo{
}
公共班级1
{
公共列表栏(){
}
}

例如,当您的方法返回比返回它的方法更难访问的
MyType
的通用列表时,通常会发生这种情况

public class TestClass {
    public List<MyClass> MyMethod() {
        return new List<MyClass>();
    }
    private class MyClass {
        public string Name {get;set;}
    }
}
公共类TestClass{
公共列表MyMethod(){
返回新列表();
}
私有类MyClass{
公共字符串名称{get;set;}
}
}

列表的一般类型是什么?如果您提供代码就好了,因为我忘了将类MyType声明为public。谢谢