根据条件从列表创建属性值数组

发布于 2024-11-05 19:45:51 字数 435 浏览 0 评论 0原文

我最近使用此网站获取从对象列表中提取属性值数组的代码(我一次又一次搜索,找不到原始帖子或有关更新的帮助:()

这是结果:

qtyArray.AddRange(plan.Components.Select(c => c.qty.HasValue ? (int)c.qty.Value : 0).ToArray());

问题是,我有其他属性要输出到并行数组中以传递给数据源,但更愿意忽略任何错误的“活动”属性,因此对于所有数组,请执行类似上面的操作,但仅限于 c.active = 的情况。 = true:

plan.Components.Select(c => c.qty.HasValue ? (int)c.qty.Value : 0 **WHERE c.active**)

有人可以帮忙吗?

I've recently used this site to get the code to extract an array of property values from a list of objects (I've searched again and again and can't find the original post or help on the update :()

This is the result:

qtyArray.AddRange(plan.Components.Select(c => c.qty.HasValue ? (int)c.qty.Value : 0).ToArray());

Problem is, I have other properties i'm outputting into parallel arrays to pass to a datasource but would prefer to ignore any false 'active' properties. So for all the arrays do something like above, but only where c.active == true:

plan.Components.Select(c => c.qty.HasValue ? (int)c.qty.Value : 0 **WHERE c.active**)

Can anyone help?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

指尖上得阳光 2024-11-12 19:45:51

怎么样:

plan.Components.Where(c => c.active).Select (c => c.qty.HasValue ? (int)c.qty.Value : 0 ) 

它应该执行所需的过滤。

What about this:

plan.Components.Where(c => c.active).Select (c => c.qty.HasValue ? (int)c.qty.Value : 0 ) 

It should do the required filtering.

说谎友 2024-11-12 19:45:51
plan.Components.Select(c => c.qty.HasValue ? (int)c.qty.Value : 0 && (c.active == null ? false : c.active));

但请注意,它会假设如果 active 为 null,则 active 为 false

plan.Components.Select(c => c.qty.HasValue ? (int)c.qty.Value : 0 && (c.active == null ? false : c.active));

Take note though that it will assume that if active is null then active is false

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文