Обзор
var sql = "ВЫБРАТЬ идентификатор, имя, фамилию, телефон, дату рождения, пол, возраст ОТ лиц, ГДЕ id = 10"; var result = context.Persons.FromSqlRaw (sql).ToList (); var name = result [0] ["first_name"]; - Object–relational mapping - Википедия
Добро пожаловать в Википедию. Сейчас у нас 6749495 страниц.(перенаправлено от) Перейти к навигацииПерейти к поиску Обзор var sql = "ВЫБРАТЬ идентификатор, имя, фамилию, телефон, дату рождения, пол, возраст ОТ лиц, ГДЕ id = 10"; var result = context.Persons.FromSqlRaw (sql).ToList (); var name = result [0] ["first_name"]; - Object–relational mapping В отличие от этого, нижеследующее использует API задания ORM, позволяя писать код, который естественным образом использует возможности языка.. var person = repository.GetPerson (10); var firstName = person.GetFirstName ();В приведенном выше случае используется объект, представляющий репозиторий хранилища и методы этого объекта. Другие платформы могут предоставлять код в виде статических методов, как показано ниже, а другие методы могут вообще не реализовывать объектно-ориентированную систему. Часто выбор парадигмы делается таким образом, чтобы ORM лучше всего соответствовал принципам проектирования окружающего языка.. var person = Person.Get (10);Обычно платформа предоставляет некоторые функции фильтрации и запросов, позволяя получать доступ и изменять подмножества базы хранения. Приведенный ниже код запрашивает людей в базе данных, значение идентификатора которых равно «10».. var person = Person.Get (Person.Properties.Id == 10); Сравнение с традиционными методами доступа к данным Альтернативой реализации ORM является использование родных процедурных языков, предоставляемых каждой крупной базой данных. Их можно вызывать из клиента с помощью операторов SQL. Шаблон проектирования Объект доступа к данным
Общая архитектура брокера объектных запросов(CORBA)
База данных объектов