C# LINQ搜索包含具有对象的类的列表
我是C#的新手,我知道如何使用一个字段/类型对列表进行LINQ搜索,但不知道如何使用多种类型的对象。我创建了一个列表C# LINQ搜索包含具有对象的类的列表,c#,list,linq,class,search,C#,List,Linq,Class,Search,我是C#的新手,我知道如何使用一个字段/类型对列表进行LINQ搜索,但不知道如何使用多种类型的对象。我创建了一个列表 List<Reader> results = new List<Reader>(); 我想用LINQ搜索它,并匹配进入该站点的用户的ID和Name。 如果这两个字段相同,我想从列表中选择用户课程和成绩 有什么建议吗?一个简单的方法,其中用于条件和选择用于表示应该: List<Reader> results = ... var data
List<Reader> results = new List<Reader>();
我想用LINQ搜索它,并匹配进入该站点的用户的ID
和Name
。
如果这两个字段相同,我想从列表中选择用户课程
和成绩
有什么建议吗?一个简单的
方法,其中
用于条件和选择
用于表示应该:
List<Reader> results = ...
var data = results
.Where(item => item.ID == userID && item.Name == userName)
// .OrderBy(item => item.Course) // uncomment if you want to order by course
.Select(item => $"Course: {item.Course} Grade: {item.Grade}");
foreach (var record in data)
Console.WriteLine(record);
列出结果=。。。
var数据=结果
.Where(item=>item.ID==userID&&item.Name==userName)
//.OrderBy(item=>item.Course)//如果要按课程排序,请取消注释
.选择(项目=>$“课程:{item.Course}成绩:{item.Grade}”);
foreach(数据中的var记录)
控制台写入线(记录);
首先,假设有两个变量保存用户引入的值。这些变量是string类型的userName和integer类型的id。如果您只需要一个保存课程和成绩的变量,可以选择一个新的匿名类型并执行如下查询:
var值=结果
.Where(item=>item.ID==userID&&item.Name==userName)
.Select(item=>new{Course=item.Course,Grade=item.Grade});
然后可以使用如下值:
values.Grades
价值观。当然
阅读有关LINQ的内容,其中
和选择
List<Reader> results = ...
var data = results
.Where(item => item.ID == userID && item.Name == userName)
// .OrderBy(item => item.Course) // uncomment if you want to order by course
.Select(item => $"Course: {item.Course} Grade: {item.Grade}");
foreach (var record in data)
Console.WriteLine(record);
var Selecteduser = results.Where(x => x.Name == selectedname && x.ID == ID).ToList();
if (Selecteduser.Count != 0)
{
//found match ..(Selecteduser[0])
string selectedcourse = Selecteduser[0].Course;
int selectedgrade = Selecteduser[0].Grade;
}
else
{
//coudlnt find match
}