c# - 使用列表集合的 find 方法

标签 c# .net linq collections

我有一个使用 List 的 Web 应用程序收藏。我想用另一个更有效的片段替换这个片段。

List<Project> liste = notre_admin.Get_Project_List();
Project p = new Project();
foreach (Project pi in liste)
{
    if (pi.Id_project == id_project) {p = pi; break;}
}

我想用我使用 find 的一行替换这些代码行List 的方法.

如何更改片段?

最佳答案

您可以使用 Linq 解决它。首先,包含命名空间:

using System.Linq;

之后,尝试使用 FirstOrDefault 中的 lambda 表达式查找第一个元素扩展方法:
var item = liste.FirstOrDefault(x => x.Id_project == id_project);
if (item != null) 
{
   // use the object found
}

关于c# - 使用列表集合的 find 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18897604/

相关文章:

c# - WPF .NET Core 3.1 应用程序发布单个文件(发布)失败

.net - 模拟所有格量词

c# - 从 LINQ 查询返回一个结果

c# - Redis 多键取值(按键乘法搜索)

c# - 在 C# 中将 foreach 用于属性

c# 并非所有代码路径都返回值错误

c# - 如何将 XComment 添加到与 XElement 相同的行?

c# 将 xml 加载到组合框中

c# - 寻找在 WPF 中显示数据行的最简单方法

c# - 将图像从 Url 异步加载到 PictureBox