调试器的屏幕截图
Employee projectManager = project.OwnerSolution.Employees.FirstOrDefault(x => x.ID == project.ProjectManager);
_lblProjectManagerValue.Text = projectManager != null ? projectManager.DisplayName : "Mitarbeiter nicht gefunden";
我想知道如何在 C# 中进行空检查。我期待运行时跳转到 else 分支,因为变量 projectManager
为 null,但由于某种原因并非如此。
project.Employees
确实返回空引用。
如果查询列表的任何部分可以为 null,则无需手动检查一大长if
语句列表中的每一个,只需使用 Null-Condition 运算符
var projectManagerName = project?.OwnerSolution?.Employees?.FirstOrDefault(x => x.ID == project?.ProjectManager)?.DisplayName;
_lblProjectManagerValue.Text = projectManagerName ?? "Mitarbeiter nicht gefunden";