Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用C返回接口集合对象#_C#_Interface - Fatal编程技术网

C# 如何使用C返回接口集合对象#

C# 如何使用C返回接口集合对象#,c#,interface,C#,Interface,我有以下接口,我想将接口集合返回到客户端应用程序 public class myClass:IDetails { private int id; private string name; public int ID { get { return id; } set { id= value; } } pu

我有以下接口,我想将接口集合返回到客户端应用程序

public class myClass:IDetails
{
    private int id;
    private string name;

    public int ID
    {
        get
        {
            return id;
        }
        set
        {
            id= value;
        }
    }

    public string Name
    {
        get
        {
            return name;
        }
        set
        {
            name= value;
        }
    }
}
目前,我正在使用以下代码创建对象

IDetails obj = new myClass();
obj.ID = 100;
obj.Name = "Bill"

我了解到我可以使用IEnumerable返回接口集合,感谢您的帮助

有许多结构实现了
IEnumerable
。例如数组或
列表

例如:

IDetails[] det = new IDetails[1];
List<IDetails> details = new List<IDetails>();
det[0] = new myClass();
IDetails[]det=新的IDetails[1];
列表详细信息=新列表();
det[0]=新的myClass();
只需创建一个所需的集合,并使用以下项目初始化它:

  IDetails[] array = new IDetails[] {
    new myClass() {ID = 100, Name = "Bill"},
    new myClass() {ID = 101, Name = "John"},
  };

  ...

  // if you want IEnumerable<T>
  IEnumerable<IDetails> items = array;
IDetails[]数组=新的IDetails[]{
新建myClass(){ID=100,Name=“Bill”},
新建myClass(){ID=101,Name=“John”},
};
...
//如果你想要数不清的
IEnumerable items=数组;

List List=新列表(){
新建myClass(){ID=100,Name=“Bill”},
新建myClass(){ID=101,Name=“John”},
};
...
//如果你想要数不清的
IEnumerable items=列表;

Dictionary dict=Dictionary(){
{100,new myClass(){ID=100,Name=“Bill”},
{101,new myClass(){ID=101,Name=“John”},
};
...
//如果你想要数不清的
IEnumerable items=dict;

等等。我希望你能看到这个模式。

你可以使用
IEnumerable
来实现这个目的,比如

IEnumerable<IDetails> objList = MethodtofilltheList();

return objList;
IEnumerable对象列表=MethodtofilltheList();
返回对象列表;

您没有使用任何集合…谢谢,我将尝试使用集合更新我的代码
  Dictionary<int, IDetails> dict = Dictionary<int, IDetails>() {
    {100, new myClass() {ID = 100, Name = "Bill"}},
    {101, new myClass() {ID = 101, Name = "John"}}, 
  };

  ...

  // if you want IEnumerable<T>
  IEnumerable<KeyValuePair<int, IDetails>> items = dict;
IEnumerable<IDetails> objList = MethodtofilltheList();

return objList;