Linq 查询对象创建中的 if 语句
if statement in Linq query object creation
我正在使用 Linq 和以下代码创建一个对象:
Model.Select(m => new { id = m.ProcessId, parent = m.ParentProcessId, text = m.Name });
但是,我想为 parent
属性 添加以下 if
语句:
if (m.ParentProcessId == null)
parent = "#";
else
parent = m.ParentProcessId
有没有办法在 Linq 查询中执行此操作?如果没有,如何以简单的方式完成?
The null-coalescing operator??
returns the value of its left-hand operand if it isn't null
; otherwise, it evaluates the right-hand operand and returns its result. The ??
operator doesn't evaluate its right-hand operand if the left-hand operand evaluates to non-null.
您可以尝试以下方法
Model.Select(m => new {
id = m.ProcessId,
parent = m.ParentProcessId ?? "#",
text = m.Name });
我正在使用 Linq 和以下代码创建一个对象:
Model.Select(m => new { id = m.ProcessId, parent = m.ParentProcessId, text = m.Name });
但是,我想为 parent
属性 添加以下 if
语句:
if (m.ParentProcessId == null)
parent = "#";
else
parent = m.ParentProcessId
有没有办法在 Linq 查询中执行此操作?如果没有,如何以简单的方式完成?
The null-coalescing operator
??
returns the value of its left-hand operand if it isn'tnull
; otherwise, it evaluates the right-hand operand and returns its result. The??
operator doesn't evaluate its right-hand operand if the left-hand operand evaluates to non-null.
您可以尝试以下方法
Model.Select(m => new {
id = m.ProcessId,
parent = m.ParentProcessId ?? "#",
text = m.Name });