我知道我不能写这样的方法:有没有办法从方法返回匿名类型?
public var MyMethod()
{
return new{ Property1 = "test", Property2="test"};
}
我能做到这一点,否则:
public object MyMethod()
{
return new{ Property1 = "test", Property2="test"}
}
,但我不希望,因为如果我这样做的做的第二个选项,我将不得不使用反思。
我为什么要这么做:
今天我在我的aspx页面的方法返回DataTable的结果,我不能改变它,我想这个数据表转换为具有我想要使用的属性的匿名方法。我不想创建一个类来做到这一点,因为我将需要多次执行相同的查询,我认为创建一个返回匿名类型的方法将是一个很好的理想。
你会用它做什么?你如何得出结论,你会想要做那样的事情? – Guffa 2009-08-25 17:26:00
@Guffa,我有一个方法在我的aspx页面返回一个datatable作为结果,我试图将这个数据表转换为一个匿名方法与我想要使用的属性。我不想创建一个类来做到这一点,因为我需要多次执行相同的查询,所以我创建一个返回匿名方法的方法将是一个好的理念。 – Cleiton 2009-08-25 17:33:10
@Cleiton - 创建一个包含数据的类将花费更少的精力。我意识到,仅仅因为我可以使用匿名类型轻松操作数据,并不意味着我需要停止创建类来定义这些类型,因为我需要将它们从一个层传递到另一个层。 – Jagd 2009-08-25 17:38:42