用于返回匿名类型列表的方法的返回类型是什么?

Bob*_*way 1 c# linq list

做一些旧代码的重构,开发人员负责很久就离开了.

他遗赠了我的Linq:

var orders = memberOrders
   .Join(members, x => x.MemberID, y => y.MemberID, (x,y) => new { Order = x , y.MemberName })
   .OrderByDescending(x => x.Order.MailingDate).ToList();
Run Code Online (Sandbox Code Playgroud)

这会创建某种双值列表,其中Order对象连接到该对象的MemberName字符串.

我想要一个函数来返回它.但是,我无法弄清楚该函数需要返回的类型.

调用GetType()显示它被调用List`1,这不是非常有用.它看起来像是List<T>由编译器动态构建到自定义对象中.

它是什么,我怎么能从函数中返回它?

D S*_*ley 8

它返回一个具有两个属性的匿名类型列表:OrderMemberName. 从技术上讲,您可以返回匿名类型的列表(返回类型可以是objectList<dynamic>),但您需要调用者使用反射或dynamic访问属性.

它的安全创建一个新的类型(或使用现有的),并返回一个列表代替.