Лекция 8. Проектирование баз данных и работа с ними Веб-приложений. LINQ, ADO.NET Entities, DDD

  • ppt
  • 11.05.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала 90. Лекция 8. Проектирование баз данных и работа с ними Веб-приложений..ppt

Лекция 8. Проектирование баз данных и работа с ними Веб-приложений. LINQ, ADO.NET Entities, DDD

LINQ

Language Integrated Query (LINQ) – проект Microsoft по добавлению синтаксиса языка запросов, напоминающего SQL, в языки программирования платформы .NET Framework
LINQ выпущен вместе с Visual Studio 2008 в конце ноября 2007 года.
Запрашиваемые данные могут быть представлены в форме:
XML (запросы LINQ к XML)
баз данных (LINQ к SQL, LINQ к наборам данных и LINQ к экземплярам)
объектов (LINQ к объектам) и т.д.

2

Архитектура LINQ

3

Примеры написания запроса LINQ на языке C#

4

















Источник: Введение в запросы LINQ ,
http://msdn.microsoft.com/ru-ru/library/bb397926.aspx

Операция запроса в LINQ

5

LINQ to SQL

LINQ to SQL – простая, но достаточно мощная система объектно-реляционного отображения (ORM)
LINQ to SQL позволяет производить отображение реляционных данных на объектную модель
LINQ to SQL поддерживает все основные возможности, необходимые для разработчиков, на SQL:
 Выбор
 Вставка
 Обновление
 Удаление

6

Работа с реляционными данными по технологии ADO.NET

7

Работа с реляционными данными по технологии LINQ to SQL

8

Отображение LINQ to SQL

9

ADO.NET Entity Framework

ADO.NET Entity Framework (EF) – объектно-ориентированная технология доступа к данным, является object-relational mapping (ORM) решением для .NET Framework от Microsoft
Возможность взаимодействия посредством LINQ to Entities и с использованием Entity SQL
Используется ADO.NET Data Services и связка из Windows Communication Foundation и Windows Presentation Foundation

10

Преимущества приложений ADO.NET Entity Framework

Могут работать концептуальной моделью в терминах предметной области
Освобождаются от жестких зависимостей от конкретного ядра СУБД или схемы хранения
Сопоставления между концептуальной моделью и схемой, специфичной для конкретного хранилища
Возможность работы с согласованной моделью объектов приложения, которая может быть сопоставлена с различными схемами хранения
Несколько концептуальных моделей могут быть сопоставлены с единой схемой хранения
Поддержка LINQ

11

Компоненты Entity Framework

Модель Entity Data Model (EDM)
Компонент Object Services
Компонент LINQ to Entities
Язык Entity SQL
Поставщик EntityClient
Компонент метаданных ADO.NET
Набор средств, которые создают сопоставления и разделяемые классы, представляющие сущности концептуальной модели
Поставщик данных SqlClient

12

Entity Data Model

13

Архитектура Entity Framework

14

Проблемно-ориентированное проектирование

Проблемно-ориентированное проектирование (Domain-Driven Design, DDD) является подходом к разработке программного обеспечения для решения сложных задач, глубоко связывающем реализацию программной систем с развивающейся моделью бизнес-концепций
Свойства DDD:
фокусировка проекта на основной проблемной области (домене) и бизнес-логике этой области
базирование всего проектирования на модели
введение творческого сотрудничества между техническими экспертами и экспертами в проблемной области, чтобы максимально понять концептуальную суть проблемы

15

Основные понятия DDD

Домен (проблемная область)
Модель
Общеупотребительный язык (Ubiquitous Language)
Контекст

16

Основные аспекты DDD

17

Архитектурный аспект DDD

Сущность (Entity)
Объект со значением (Value Object)
Агрегат (Aggregate)
Службы (Services)
Репозитории (Repositories)
Фабрики (Factories)

18