问题标签 [ienumerable]
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.
linq - 将 LINQ 应用于对象分组依据和排序依据到通用列表(C#)
我很难针对通用列表 myList 创建工作组依据和排序依据子句。myList 有一个属性“设置”列表,它本身包含每个业务的“子”属性列表。
我想按行业分组,并在每个行业内按企业名称排序。我的意图是这样的:
但是我收到错误消息:' System.Linq.IGrouping 不包含设置的定义,并且没有扩展方法设置接受 System.Linq.Igrouping 类型的第一个参数可以找到.... '表明我无法调用订单by 子句没有一些转换或额外的处理。
我已经尝试了各种各样的方法来分解它并让它工作,但我错过了一些东西。任何帮助表示赞赏
vb.net - 有没有办法检查是否正在使用 For Each 循环访问 IEnumerable?
假设我有一个 IEnumerable,例如 List(TValue),并且我想跟踪是否正在访问该列表(以防止出现问题,例如,在不同线程上迭代列表时添加到列表);我总是可以编写如下代码:
(我意识到这段代码非常随意,但它说明了我在说什么。)
我的问题是是否有比手动更新和访问布尔值更好/更清洁的方法来执行此检查,如上所述。我觉得必须有,但据我所知,没有任何 IEnumerable 类具有内置的“我正在迭代”方法或属性。编写一个实现 IEnumerable 并包含这样一个属性的新类对我来说似乎有点矫枉过正。
c# - 数据表与 IEnumerable
我正在与另一位与我一起工作的程序员进行辩论。
对于数据库返回类型,是否存在任何显着的内存使用或性能差异,或其他应使某人避免使用 DataSets 和 DataTables 并偏爱实现IEnumerable<T>
...的类型或反之亦然的缺点
我更喜欢返回实现IEnumerable<T>
( List<T>, T[] etc
) 的类型,因为它更轻量级,在访问属性时对对象进行强类型化,允许有关底层类型的更丰富的信息等。尽管手动使用数据读取器时,它们确实需要更多时间来设置。
这些天使用 DataTables 的唯一原因仅仅是懒惰吗?
c# - IEnumerable 和字符串数组 - 查找匹配值
背景:我在视图模型中有一个带有 MultiSelectList 的 ASP.NET MVC 视图页面。我想用 MultiSelectList 对象中的 SelectedValues 列表填充标签。该列表以 IDName 类型存储在 MultiSelectList 中:
所以 MultiSelectList.Items 是一个包含 IDName 列表的 IEnumerable。我可以在这个列表上做一个 foreach 并抓取 .Name 来获取每个条目的名称。但是,如果 ID 在 MultiSelectList.SelectedItems 中,我只想这样做,它看起来是一个字符串 [],看起来像:
所以,当 IDName.ID 在 SelectedItems 列表中时,我只想获取 IDName.Name。
我对 MVC 和 C# 都很陌生,所以我不确定最好的方法。有什么建议么?
更新#2:
好的,我很密集。这有效:
SelectedValues 实际上是一个包含 string[] 的 IEnumerable。
c# - 检查 IEnumerable(Of T) 中是否没有元素 - Linq 元素和量词运算符
对于我的功能
当序列不包含任何元素时,此行会出错(应该如此)
我已将其更改为以下
是否有更好、更简单或更优雅的方法来确定 IEnumerable 序列是否没有元素?
c# - 对集合中的所有对象运行方法
所以我有一个从 Bloops 集合创建的 Razzies 集合。我使用 Linq 查询检索此集合。参考:Linq 将某些属性选择到另一个对象中?用于查询。
我想知道是否可以在返回集合之前,甚至在返回集合之后,在所有新创建的 Razzies 上运行一个方法,而无需使用 for 循环。
我试过这个:
但它什么也不返回。
c# - Assert.AreEqual 如何确定两个通用 IEnumerable 之间的相等性?
我有一个单元测试来检查方法是否返回正确的IEnumerable
. 该方法使用yield return
. 它是可枚举的类如下:
这是该方法的相关部分:
如果我将此方法的结果存储在 中actual
,请创建另一个 enumerable expected
,然后像这样比较它们......
...,断言失败。
IEnumerable
我为此编写了一个类似于Pythonzip
函数的扩展方法(它将两个 IEnumerables 组合成一组对)并尝试了这个:
有效!Assert.AreEqual
那么这两个s有什么区别呢?
c# - C#:IEnumerator在 using 语句中
我很想知道该SingleOrFallback
方法是如何在MoreLinq中实现的,并发现了一些我以前从未见过的东西:
为什么IEnumerator<T>
在using
声明中?foreach
这也是在使用on an时应该考虑的事情IEnumerable<T>
吗?
附带问题:这种方法究竟做了什么?每当源序列不包含一个项目时,它是否返回后备项目?
c# - 铸造 IEnumerable列出
我想知道是否可以将 anIEnumerable
转换为List
. 除了将每个项目复制到列表中之外,还有其他方法吗?
c# - 如何声明具有匿名类型的字段(C#)
在下面的代码中,如何将 myLine 声明为公共(全局)变量?问题是我不能使用关键字“var”。
我想这样做,因为我必须找到一种方法来访问该 ienumerable 以供以后使用。