gpt4 book ai didi

linq - 如何轻松地将 linq 结果转换为业务对象集合

转载 作者:行者123 更新时间:2023-12-01 04:43:48 25 4
gpt4 key购买 nike

我有业务对象集合

我想使用 linq 过滤行,但注意到它返回 IEnumerable,然后无法将其转换为我的 BOC

例如我不能那样做

BOC <Client> bocCLients = (BOC <Client>) 
from C in ClientsColl where C.ClientId == 100 select C

我通过循环 linq 结果并将返回的对象添加到我的原始集合中解决了这个问题。

请问有没有更简单的方法?

最佳答案

var bocCLients = ClientsColl.Where(c => c.ClientId == 100).ToList();

或者

var bocCLients = new BOC<Client>(ClientsColl.Where(c => c.ClientId == 100));

编辑或者可能是一个 AddRange 扩展

public static void AddRange<T>(this ICollection<T> colSource, IEnumerable<T> collection)
{
if (colSource is List<T>)
((List<T>)colSource).AddRange(collection); //If List use build in optimized AddRange function
else
{
foreach (var item in collection)
colSource.Add(item);
}
}

关于linq - 如何轻松地将 linq 结果转换为业务对象集合 <T>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4871612/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com