【发布时间】:2016-03-24 14:42:54
【问题描述】:
我有一个函数返回一个 Person 类型的对象。
现在,我需要调用另一个接受IEnumerable<Person> 类型的函数。请问怎么做?
下面的这个函数返回我的人。
var objA = Service.GetAll(obj);
我需要调用另一个方法如下
var result = Service.Get(AR<IEnumerable<Person>> name, type)
我将名称指定为IEnumerable<Person>,因为它采用该类型。
编辑
我的第二种方法将这个作为参数类型。
AR<IEnumerable<Person>>
在所有其他地方,我的第一个方法返回AR<Ienumerable<person>>,但在一种情况下它返回AR<Person>。现在我需要将它作为一个列表,即AR<IEnumerable<Person>>,以便我可以按原样使用第二种方法
【问题讨论】:
-
你的意思是你想把那个人传递给一个接受
IEnumerable<Person>作为参数的方法吗?var p = f1();然后打电话给f2(new Person[] { p });这是你要找的吗? -
@RezaAghaei: 不,我正在寻找像 IEnumerable
这样的东西应该作为参数传递给第二个函数,而我在第一个函数中将 Person 作为返回值 -
我对这个问题持怀疑态度。
var objA = Service.GetAll(obj);的名字很糟糕。你说它返回一个Person?那么,它是GetAll什么?人?那闻起来你确定你的类型是你所说的那样。从你的cmets的语气来看,我怀疑不是。让我们看看更多代码,您从编译器看到的特定错误,以及您从上面提供的代码调用的所有代码的接口/方法声明. -
没有人知道如何构造
AgentResult<T>。很明显,您在那些可以帮助您的人的脚下省略细节并更改“简单要求”,这是在浪费人们的时间。直截了当地提出您的问题,并在正确形成时提出。 -
@Deevinee 自提出这个误导性问题以来,您已经完全 3 次更改了方法中的类型。很难不认为这是浪费时间。