lab8-oop-json.md 1.8 KB

ООП. Основы (JSON)

Повторение теории

Основано на этой лекции

  1. Создание класса

    В отличие от CSV данные десериализуются в класс, т.е. этот класс должен быть объявлен заранее, например:

    class Student
    {
        public string firstName {get;set;}
        public int age {get;set;}
        public char gender {get;set;}
    }
    
  2. Подготовка файла для импорта

    [
        {
            "firstName": "Сергей", 
            "age": 18,
            "gender": "М"
        },
        {
            "firstName": "Богдан", 
            "age": 17,
            "gender": "М"
        },
        {
            "firstName": "Анна", 
            "age": 19,
            "gender": "Ж"
        }
    ]
    
  3. Импорт данных

    var buffer = File.ReadAllText("./student.json");
    var serializer = new JavaScriptSerializer();
    var studentList = serializer.Deserialize<Student[]>(buffer);
    ...
    

Задача

  • сформировать файл с данными в формате JSON для вашей предметной области
  • загрузить данные в список объектов из подготовленного файла
  • применить к полученному списку LINQ-запросы WHERE, ORDERBY, SELECT, DISTINCT, SUM... (вывести результат в консоль и приложить к отчету)

    Например:

    var youReInTheArmyNow = studentList.where(s => s.age >= 18 && s.gender == 'М')