问题标签 [anonymous-types]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
5389 浏览

c# - 在 C# 中应该如何使用匿名类型?

我看过很多关于匿名类型如何工作的描述,但我不确定它们如何真正有用。在精心设计的程序中可以使用匿名类型来解决哪些场景?

0 投票
5 回答
3715 浏览

c# - linq 等效于通用函数的'select *' sql?

我有一个通用<> 函数,它接受一个 linq 查询('items')并通过它枚举添加额外的属性。如何选择原始“项目”的所有属性而不是项目本身(如下面的代码)?

所以等价于sql: select *, 'bar' as Foo from items

0 投票
6 回答
1380 浏览

c# - 除了 LINQ 查询,如何在 C# 中使用匿名类型?

我一直在努力了解 C# 中的一些新特性,其中一个我没有机会使用的特性是匿名类型。

我了解与 LINQ 查询有关的用法,并且我查看了这个 SO 帖子,它提出了类似的问题。我在网上看到的大多数示例都与 LINQ 查询有关,这很酷。我也看到了一些有些人为的例子,但我没有看到任何有价值的东西。

您认为匿名类型确实为您提供了一些实用程序,您是否有一个新颖的用途?

0 投票
9 回答
177105 浏览

c# - 匿名类可以实现接口吗?

是否可以让匿名类型实现接口?

我有一段我想工作的代码,但不知道该怎么做。

我有几个答案要么说不,要么创建一个实现接口的类构造新实例。这不是很理想,但我想知道是否有一种机制可以在接口之上创建一个瘦动态类,这会使这变得简单。

我发现一篇文章动态接口包装描述了一种方法。这是最好的方法吗?

0 投票
5 回答
16464 浏览

c# - 您可以在 .NET 中从 JSON 实例化对象实例吗?

由于 Object Initializers 与 JSON 非常相似,现在 .NET 中有匿名类型。能够获取一个字符串(例如 JSON)并创建一个表示 JSON 字符串的匿名对象会很酷。

使用 Object Initializers 创建匿名类型:

如果您可以传入对象初始化程序代码的字符串表示形式(最好是 JSON 之类的)以使用该数据创建匿名类型的实例,那就太棒了。

我不知道这是否可能,因为 C# 不是动态的,编译器实际上将 Object Initializer 和d Anonymous Type 转换为可以运行的强类型代码。本文对此进行了解释

也许采用 JSON 并使用它创建键/值字典的功能效果最好。

我知道您可以在 .NET 中将对象序列化/反序列化为 JSON,但我正在寻找一种创建本质上松散类型的对象的方法,类似于 JavaScript 的工作方式。

有谁知道在 .NET 中执行此操作的最佳解决方案?

更新:太澄清了我为什么要问这个的上下文......我在考虑 C# 如何在语言级别(可能)更好地支持 JSON,并且我试图考虑今天可以完成的方法,用于概念原因。所以,我想我会把它贴在这里开始讨论。

0 投票
3 回答
2330 浏览

c# - C# 3.0 匿名类型:命名

我想知道是否有某种方法可以命名或重命名匿名类型的属性以在属性名称中包含空格。例如:

在此示例中,我希望 FirstName 为“First Name”。这个问题的原因是我有一个用户控件,它公开了一个我绑定到不同匿名类型的公共 DataSource 属性。它现在工作得很好,除了列名有点不友好(名字而不是名字)的一个小缺点。

0 投票
2 回答
331 浏览

linq - .NET 3.5 (lambdas, Linq) 是如何演变的

我记得大约一年前,Scott Hanselman(可能是 scott Guthrie)读过一篇关于 Linq 如何演变的文章。它记得它表明任何匿名类型都会导致 lambda 表达式,然后以某种方式导致 Linq。我似乎无法在谷歌上找到它。还有人记得这个帖子吗?如果是这样,你能发一下吗?

0 投票
3 回答
3899 浏览

c# - 签名中的匿名类型

我正在尝试使以下方法的签名生效。由于这是匿名类型,我遇到了一些麻烦,任何帮助都会很棒。

当我在 QuickWatch 窗口中查看 sortedGameList.ToList() 时,我得到了签名

非常感谢

唐纳德

0 投票
3 回答
7515 浏览

c# - LINQ to XML 可选元素查询

我正在使用现有的 XML 文档,该文档的结构(部分)如下:

我正在使用 LINQ to XML 查询 XDocument 以检索所有这些条目,如下所示:

“ID”元素并不总是存在,所以我的解决方案是上面的 Count() 爵士乐。但我想知道是否有人有更好的方法来做到这一点。我仍然对这些新东西感到满意,我怀疑可能有比我目前做的更好的方法来做到这一点。

有没有更好/更喜欢的方式来做我想做的事?

0 投票
1 回答
4740 浏览

c# - 基于匿名类型创建泛型类实例

我有一个类ReportingComponent<T>,它有构造函数:

我有针对 Northwind 数据库的 Linq 查询,

Query 的类型为IQueryable<a'>,其中 a' 是匿名类型。

我想将查询传递给 ReportingComponent 以创建一个新实例。

做这个的最好方式是什么?

亲切的问候。