你能回复一个'匿名结构'吗?

Mr.*_*Boy 0 c# .net-4.5

这个答案描述了在C#中构造'anonymous struct':C的内联匿名结构定义是否有等效的C#语法?

var x = new { SomeField = 1, SomeOtherField = "Two" };

从方法返回它是否有效以避免必须明确定义结构?对该答案的评论说不,但那是2011年...

Yuv*_*kov 6

那不是a struct,它是C#中的匿名类型(实际上是class由编译器实现的).匿名类型在本地范围内声明,并且您不能将其作为C#中的强类型类传递,因为它是编译器生成的类.您可以选择使用objectdynamic作为返回类型,但仍然会丢失基础类型.

总结一下你的问题,答案很简单,"不是你希望它工作的方式".

  • @KonradRudolph我在之前的回答中修复了不好的术语. (2认同)