我有一个返回如下的方法,
return new { a, b, c, d};
方法定义是 public object GetValues();
如何在调用此方法后访问那些变量a,b,c,d?
两种选择:
使用动态类型,只要您在同一个程序集中使用它:
dynamic values = GetValues(); var a = values.a; //etc
直接使用反射; 产生的类型将具有公共只读属性叫a
,b
,c
和d
另外,如果你能有可能改变方法不使用匿名类型,这样做.(您可能无法根据上下文更改方法的签名,但即使这样,您仍然可以在调用代码中进行转换.)