我的代码有问题。我正在与C#一起做一个crud,我正在逐步找到一个学生。如果您没有找到任何匹配,我想发送一条消息,说没有该ID的学生。我该怎么做?
我尝试简单时:
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时,它告诉我我不控制异常。
如果首先使用,则期望是序列中至少有一个元素。使用FirstOrdOdefault应该适合您的情况。
您需要使用FirstOrDefault
而不是First
。