使用linq从ienumerable中获取数据 [英] Get data from ienumerable inside ienumerable using linq

查看:398
本文介绍了使用linq从ienumerable中获取数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有数据列表。



I have list of data.

class Student
{
public string class{get;set;}
public Enumerable<book> subjects{get;set;}
}

class Book{
public string language{get;set;}
public string science{get;set;}
}





我有Enumerable< students>名单。我希望使用C#或最简单的方式获取语言名称为英语的班级名称。



我尝试过:





I have Enumerable<students> list. i want to get class names where language name is English using C# or easiest way.

What I have tried:

var lang= students.Select(i => new { i.class, i.subjects}).Select(j => j.subjects.Where(k => k.language.ToLower() == "english".ToLower()));

推荐答案

在纠正了Vinod Jangle评论中提到的问题后,试试这个



After correcting the problem mentioned in Vinod Jangle's comment, try this

//returns students having a specific language book
    var langStudents = students.Where(s => s.subjects.Any(x => s.Language.ToLower() == 
                       lang));
    return langStudents;
}


这篇关于使用linq从ienumerable中获取数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆