Дипломы, курсовые, рефераты, контрольные...
Срочная помощь в учёбе

Углублённое изучение ООП. 
Использование LINQ

Лабораторная работаПомощь в написанииУзнать стоимостьмоей работы

LINQ (Language-Integrated Query) — это название набора технологий, основанных на интеграции возможностей запроса непосредственно в язык C# (а также в Visual Basic и, возможно, в любые другие языки .NET). В этом упражнении в форме необходимо создать ещё один список, в который будут выведены альбомы выбранного исполнителя. Для реализации задачи следует использовать функцию LINQ Where. В упражнении… Читать ещё >

Углублённое изучение ООП. Использование LINQ (реферат, курсовая, диплом, контрольная)

МИНОБР НАУКИ РОССИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ „ЛЭТИ“ им. В.И.УЛЬЯНОВА (ЛЕНИНА)» (СПбГЭТУ) ФАКУЛЬТЕТ КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ И ИНФОРМАТИКИ КАФЕДРА СИСТЕМ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ ЛАБОРАТОРНАЯ РАБОТА по учебной дисциплине «Паттерны проектирования приложений«

на тему «Углублённое изучение ООП«

Часть 1−2 «Использование LINQ«

Выполнили:

Соловьёв С.П.

Ярославцева В.А.

Группа: 9301

Факультет: КТИ Проверил: Новакова Н.Е.

Санкт-Петербург 2012

Цель работы: Научиться пользоваться LINQ и его основными функциями.

Общие сведения

LINQ (Language-Integrated Query) — это название набора технологий, основанных на интеграции возможностей запроса непосредственно в язык C# (а также в Visual Basic и, возможно, в любые другие языки .NET).

Для разработчиков, создающих запросы, наиболее очевидная «встроенная в язык» часть LINQ — это выражение запросов. При помощи синтаксиса запросов можно выполнять сложные операции фильтрация, упорядочения и группировки в источниках данных, причем для этого требуется крайне небольшой объем кода.

Запрос представляет собой выражение, получающее данные из источника данных. Запросы обычно выражаются на специальном языке запросов.

Подготовка к выполнению лабораторной работы

1. Откройте Visual Studio.

2. Создайте новый проект типа Windows Forms Application с названием OopLabs.Linq.

3. Добавьте в проект файл Artist.cs.

4. Изучите описание класса Album. Класс хранит информацию о музыкальном альбоме:

имя исполнителя, название, дату выхода. Кроме того, определение класса включает статический метод Album. GetAlbums (), возвращающий список некоторых альбомов нескольких групп.

Формализация задачи

Рисунок 1.

Упражнение 1 — Вывод списка групп

В упражнении 1 необходимо добавить на главную форму поле (список), куда будут выводиться список исполнителей. Для отображения коллекции нужно использовать функцию LINQ Select ().

Листинг программы

using System;

using System.Collections.Generic;

using System. ComponentModel;

using System. Data;

using System. Linq;

using System. Text;

using System.Windows.Forms;

namespace OopLabs. Linq

{

public partial class Form1: Form

{

public Form1()

{

InitializeComponent ();

listBox1.DataSource = Album. GetAlbums ()

Select (album => album. Artist)

Distinct ()

ToList ();

}

}

}

Рисунок 2. Список исполнителей

Упражнение 2 — Вывод альбомов для групп

В этом упражнении в форме необходимо создать ещё один список, в который будут выведены альбомы выбранного исполнителя. Для реализации задачи следует использовать функцию LINQ Where.

Листинг программы

using System;

using System.Collections.Generic;

using System. ComponentModel;

using System. Data;

using System. Linq;

using System. Text;

using System.Windows.Forms;

namespace OopLabs. Linq

{

public partial class Form1: Form

{

public Form1()

{

InitializeComponent ();

listBox1.DataSource = Album. GetAlbums ()

Select (album => album. Artist)

Distinct ()

ToList ();

}

private void listBox1_SelectedIndexChanged (object sender, EventArgs e)

{

listBox2.DataSource = Album. GetAlbums ()

Where (album => (listBox1.SelectedItem.ToString () == album. Artist))

ToList ();

}

}

}

Рисунок 3. Список альбомов исполнителя запрос функция linq select

Рисунок 4. Список альбомов исполнителя

Упражнение 3 — Сортировка списков исполнителей и альбомов

В этом упражнении необходимо сделать так, чтобы альбомы сортировались по дате выхода от более поздних к более ранним. Для выполнения задачи используется функция OrderByDescending (). Так же, используя функцию OrderBy (), необходимо сортировать список исполнителей в алфавитном порядке.

Листинг программы

using System;

using System.Collections.Generic;

using System. ComponentModel;

using System. Data;

using System. Linq;

using System. Text;

using System.Windows.Forms;

namespace OopLabs. Linq

{

public partial class Form1: Form

{

public Form1()

{

InitializeComponent ();

listBox1.DataSource = Album. GetAlbums ()

Select (album => album. Artist)

OrderBy (album =>album)

Distinct ().ToList ();

}

private void listBox1_SelectedIndexChanged (object sender, EventArgs e)

{

listBox2.DataSource = Album. GetAlbums ()

Where (album => (listBox1.SelectedItem.ToString () == album. Artist))

OrderByDescending (album=>album.Date)

ToList ();

}

}

}

Рисунок 5. Вывод отсортированных исполнителей и альбомов

Вывод: В результате выполнения лабораторной работы мы ознакомились с LINQ и применением его основных команд, таких как запрос информации, вывод списков по определённым критериям и сортировка результатов.

Выполнены три упражнения, по каждому из них представлен листинг программы и результаты её работы.

Показать весь текст
Заполнить форму текущей работой