Raj kumar.C Ответов: 1

Получить данные из ienumerable внутри ienumerable с помощью linq


У меня есть список данных.

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;}
}


У меня есть перечислимый список "студентов". я хочу получить имена классов, где имя языка-английский, используя C# или самый простой способ.

Что я уже пробовал:

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

[no name]

Нужно поменять название "класс" на "класс" переменная, объявленная внутри класса student. Здесь вы не можете использовать class в качестве зарезервированного ключевого слова.

1 Ответов

Рейтинг:
8

GKP1992

После исправления проблемы, упомянутой в комментарии Винода джангла, попробуйте сделать следующее

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


Raj kumar.C

я хочу получить только имя класса а не предметы

Raj kumar.C

в любом случае спасибо за ваш ответ