如何检查是不是未分配 lambda 表达式? [复制]
Posted
技术标签:
【中文标题】如何检查是不是未分配 lambda 表达式? [复制]【英文标题】:How to check if a lambda expression has not been assigned? [duplicate]如何检查是否未分配 lambda 表达式? [复制] 【发布时间】:2019-02-16 10:12:18 【问题描述】:我的代码有问题。我正在用 C# 做一个杂乱无章的事情,我想通过 id 找到一个学生。如果您没有找到任何匹配项,我想发送一条消息说没有具有该 ID 的学生。我该怎么做?
我尝试了一个简单的while:
while(i < count && !found)
s = studentList[i];
if (id.Equals(s.IdStudent))
found = true;
student = s;
i++;
if (found == false)
System.Console.WriteLine("There is no match");
我正在尝试这个:
student = studentList.First(i => i.IdStudent == id);
if(student == null)
System.Console.WriteLine("There is no match");
这似乎很好,但是当执行和使用不在列表中的 id 时,它告诉我我无法控制异常。
【问题讨论】:
尝试FirstOrDefault
而不是First
,您的代码应该可以工作。
【参考方案1】:
如果使用 First,则期望序列中至少有一个元素。使用 FirstOrDefault 应该适合您的情况。
【讨论】:
【参考方案2】:您需要使用FirstOrDefault
而不是First
。
【讨论】:
以上是关于如何检查是不是未分配 lambda 表达式? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
检查 Request.QueryString 中是不是存在未分配的变量
无论如何,是不是可以使用 lambda 自动将新 IP 地址分配给入站规则中的安全组