如何返回匿名类型列表

时间:2010-10-19 11:28:29

标签: .net-3.5 anonymous-types

可以从方法中返回匿名类型列表吗?

我建立了像这样的匿名类型列表

var l = (new[] { new { Name = "thename", Age = 30 } }).ToList();

由于

5 个答案:

答案 0 :(得分:1)

如果您返回强制转换为object的列表,则可能无效。考虑使用相应的字段而不是匿名类创建类。

答案 1 :(得分:0)

可能,在紧要关头,它被称为“咕噜咕噜”。

这涉及将匿名类型的原型作为泛型变量传递。请记住,如果两个匿名类型在相同的顺序中具有相同的命名/类型属性,则认为它们是相同的类型。

答案 2 :(得分:0)

我写过这个方法:

List<T> Cast<T>(object o, T type)
{
  return (List<T>)o;
}

以及应该返回匿名类型列表的方法,现在返回一个对象,并使用Cast<T>方法转换为我需要的方法。

这是一个棘手的方法,但我现在需要的是。

感谢所有

答案 3 :(得分:0)

Working with C# Anonymous Types

这就是你需要的

答案 4 :(得分:0)

来自Creating a list of Anonymous Type in VB,JaredPar引用:

这是一种从单个匿名类型创建匿名类型列表的便捷方法。

Public Function CreateListFromSingle(Of T)(ByVal p1 As T) As List(Of T)
  Dim list As New List(Of T)
  list.Add(p1)
  return List
End Function

现在您可以执行以下操作

Dim list = CreateListFromSingle(dsResource)

原帖中有关于该主题的更多讨论。