首页 > 后端开发 > C++ > 如何从 C# 方法返回匿名类型?

如何从 C# 方法返回匿名类型?

DDD
发布: 2024-12-25 15:34:09
原创
689 人浏览过

How Can I Return Anonymous Types from a C# Method?

在 C# 中返回匿名类型

在 C# 中,匿名类型是创建具有自定义属性的临时对象的便捷方法。但是,当从方法返回匿名类型时,存在一个限制。

问题:

如何从方法返回匿名类型,考虑到下列的代码:

public "TheAnonymousType" TheMethod(SomeParameter)
{
  using (MyDC TheDC = new MyDC())
  {
     var TheQueryFromDB = (....
                           select new { SomeVariable = ....,
                                        AnotherVariable = ....}
                           ).ToList();

      return "TheAnonymousType";
    }
}
登录后复制

答案:

不幸的是,C# 中的方法无法直接返回匿名类型。

原因关键在于匿名类型是在运行时编译的,并且在编译时没有已知的类型。因此,它们不能作为特定的命名类型返回,例如示例中的“TheAnonymousType”。

解决方案:

要解决此限制,您有两种选择:

  1. 使用强类型匿名type:
    使用 var anonymousObject = new { ... } 创建强类型匿名类型。这将创建一个具有指定属性的命名类型,该类型可以从该方法返回。
  2. 使用容器对象:
    将匿名类型作为容器对象的一部分返回,例如 List。这允许您返回对象集合,包括匿名类型。

以上是如何从 C# 方法返回匿名类型?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板