gpt4 book ai didi

c# - LinQ 查询 where 条件

转载 作者:行者123 更新时间:2023-11-30 13:50:05 27 4
gpt4 key购买 nike

我正在尝试将数据导入新数据库,但旧数据库中的某些列为空。

在我的一种方法中,我使用下面的查询来获取记录,就像我说的那样,行中已经有一列对某些记录具有空值。

Guid nameGuid= new guid('CCECE54B-EE14-4463-8A0B-02C72679334A')

MySubQuery = from a in MainQuery
where a.Table1.Id.Equals(nameGuid)
Select a;

我想检查 a.Table1.Id 值,如果它等于 null,那么我仍然想要该行但忽略 where 条件。

关于在 Linq 查询中使用三元运算符的任何建议或任何其他方法来完成我的任务。

最佳答案

听起来像你想要的:

MySubQuery = from a in MainQuery
where a.TableId.Id Is Nothing OrElse a.Table1.Id.Equals(nameGuid)

假设我的 VB 是正确的...在 C# 中我会写:

var query = from a in mainQuery
where a.TableId.Id == null || a.TableId.Id == nameGuid
select a;

或者直接使用扩展方法:

var query = mainQuery.Where(a => a.TableId.Id == null || 
a.TableId.Id == nameGuid);

关于c# - LinQ 查询 where 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7582316/

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