Pull to refresh

Провайдеры ado.net entity framework

.NET *
Как известно, в середине года в сервиспаке к .net framework 3.5 и VS2008 появятся некоторые расширения ado.net. Одним из них станет ado.net entity framework, который доступен сейчас для скачивания в версии beta 3 здесь. На данный момент это уже вполне рабочая реализация, которая достойна самого пристального внимания. Ей не хватает некоторых инструментов для удобного моделирования, но надеюсь, в финальной версии все будет.

Хорошая новость состоит в том, что недавно разработчки ado.net на своем блоге сообщили, что для текущей версии entity framework реализованы бета версии провайдеров:
— компания Core Lab выпустила ado.net провайдер для доступа к БД Oracle, MySQL, PostgreSQL and SQLite;
— компания IBM выпустила свой провайдер для DB2, IDS and U2 (честно говоря, два последних сокращения мне не известны);
— на конференции MySQL в Санта Клара бал продемонстрирован доступ к MySQL через entity framework;
— Npgsql выпустила бета версию провайдера для PostgreSQL который работает с Entity Framework.

Похоже, что LINQ и Entity Framework получают все больше возможностей стать популярными не только среди разработчиков баз данных MS SQL, но и всех других самых распространенных БД.

Ссылка на блог разработчиков ado.net blogs.msdn.com/adonet
Total votes 8: ↑7 and ↓1 +6
Views 4.6K
Comments 2

Итоги опроса про Entity Framework

.NET *
Хотел бы подвести некоторые итоги опроса про Entity Framework, который можно посмотреть тут
habrahabr.ru/blog/net/42340.html:

1. Более двух третей хабранаселения не используют в работе asp.net. И так было очевидно, что большинство пишет на php/python/erlang/perl/ruby, сейчас это документально засвидетельствовано. Asp.net как платформа сильно отстает в нашей стране. Это связано и с некоторой громоздкостью платформы и ее направленностью дефакто на платформу windows/.net, которую многие, зачастую несправедливо, не любят, презирают или игнорируют.
Читать дальше →
Total votes 6: ↑6 and ↓0 +6
Views 1.1K
Comments 9

asp.net: Entity Framework, одно из отличий от LINQ to Sql

.NET *
Этой статьей хотел бы открыть цикл статей по Entity Framework. В дальнейшем планирую постить результаты своего опыта в процессе использования EF, а пока я приведу вольное изложение интересной статьи на тему «Чем отличается LINQ to SQL от Entity Framework».
Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Views 13K
Comments 16

ADO.NET Entity Framework близкое юзание

.NET *
Тем, кто пишет запросы в коде страницы посвящается...

Приветствую всех!

На хабре есть немного информации о том, что в следующей версии VisualStudio 2008 будет ADO.NET EntityFramework. (Открою секрет, эта версия уже появилась.) Эта разработка представляет собой универсальный фреймворк, который позволяет создавать даталогику вашего проекта в пару кликов мыши.
До сих пор, работая с даталогикой, я сталкивался с 2 видами проектов. Первые были созданы на небезызвестном фреймворке NHibernate, другие реализовывали даталогику программистами. Я уже 3 года занимаюсь написанием и разработкой различных систем и всё это время разрабатывал логику работы с данными исключительно ручками.
И вот, на днях, после того, как я поставил новую винду, я скачал VisualStudio WebDeveloper Express, и с радостью обнаружил в комплекте поставки ADO.NET EntityFramework. Через некоторое время зарегистрировал домен, создал простенький сайт, и начал тренировать свои силы в написании программ под этот фреймворк.

Вперёд, к коду!
Total votes 48: ↑44 and ↓4 +40
Views 20K
Comments 120

Наследование в ADO.NET Entity Framework

.NET *
О чём вы, Морфеус?


Приветствую всех!
Моя первая статья на хабре была оценена хабраюзерами достаточно высоко. Что же, спасибо всем кто оставил своё мнение о статье, мне было приятно вас почитать, я продолжаю.

В новой статье хотелось бы поговорить о наследовании. Признаться честно, до изучения ADO.NET Entity Framework я вообще даже не задумывался о том, чтобы вводить в свои проекты наследование сущностей в объектно-ориентированных обёртках для БД. Обычно базу строили так, чтобы максимально избегать наследования. Хотя, порой оно и маячило на горизонте, но обходилось. Сейчас я опишу, как я добавил в свой проект два очень простых класса, которые были отнаследованны от уже имеющихся таблиц.

Опять же, замечу, что я не буду углубляться в теорию, всё показываю на практике. Для теории я сделаю отдельный цикл статей.

И так,
погружаемся...
Total votes 38: ↑26 and ↓12 +14
Views 8K
Comments 15

Генерация скрипта базы данных по модели данных Entity Framework

Lumber room
В будущей версии редактора моделей Entity Framework в Visual Studio ожидается такая полезная функциональность, как обратная генерация базы данных по модели данных (SSDL — Storage Schema Definition Language). Но пока её нет, можно воспользоваться XSLT-преобразованием, которое поможет получить из XML-описания модели хранилища SQL-DDL код для создания таблиц и связей в БД.

Читать дальше →
Total votes 8: ↑8 and ↓0 +8
Views 572
Comments 1

Новая версия Entity Framework будет поддерживать внешние ключи в концептуальной модели

Lumber room
Многие, кто сейчас работают с Entity Framework, жалуются на отсутствие внешних ключей в концептуальной моделе, то есть в тех классах, которые генерирует Entity Framework. В результате, простая задача по добавлению или обновлению записи часто выглядит не очень изящно. То есть либо приходится подгружать связанную запись, что приводит к выполнению лишнего запроса к базе данных, либо создавать новый объект класса EntityKey, что требует написания лишнего кода и после простого и простого в использовании LINQ to SQL выглядит по-меньшей мере странно.

Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Views 273
Comments 4

Быстрое создание CRUD-основы приложения на Entity Framework/ASP.Net MVC

ASP *
Большинство прикладных приложений, которые приходится разрабатывать на практике, сводятся к примитивному шаблону: есть некая предметная область, в которой выделены объекты и связи между ними. Все это легко представляется в виде таблиц в базе данных, а базовый функционал приложения состоит в том, чтобы выполнять над этими таблицами четыре основных действия: создание, модификацию, просмотр и удаление объектов. Далее, обычно, на эту основу прикручивают дополнительную бизнес-логику, модуль отчетов и остальной необходимый функционал.
Естественной реакцией организма разработчика на присутствие определенного шаблона является желание автоматизировать его применение, например, используя кодогенерацию. Шутка. Кодогенерация – это тот же метод copy-paste, только за программиста его делает специально написанный инструмент. Иногда это оправдано, но перед тем, как решится на генерацию кода, лучше хорошо подумать, а нельзя ли здесь обойтись средствами ООП, к примеру?
Читать дальше →
Total votes 34: ↑24 and ↓10 +14
Views 12K
Comments 7

Проверки на пустые перечисления

.NET *
Translation
Недавно, во время разбора кода одной программы я заметил метод, который выглядел примерно так:

public void Foo<T>(IEnumerable<T> items)
{
 if(items == null || items.Count() == 0)
 {
  // Оповестить о пустом перечислении
 }
}



Метод принимает дженерик-перечисление и проверяет, пустое ли оно. Видите ли вы тут потенциальную проблему? Я намекну, проблема в этой строчке:

items.Count() == 0


И в чем же тут проблема? Проблема в том, что эта строчка может оказаться очень неэффективной.
Читать дальше →
Total votes 128: ↑91 and ↓37 +54
Views 9.4K
Comments 65

Вдогонку Visual Studio 2010 SP1, новые инструменты для разработчиков

Microsoft corporate blog F# *

image



Как вы, наверняка, знаете недавно был выпущен пакет обновления для Visual Studio 2010. Спустя некоторое время стали появляться дополнительные инструменты, про которые стоит рассказать отдельно.


Читать дальше →
Total votes 43: ↑31 and ↓12 +19
Views 8.6K
Comments 3

Фильтрация коллекций в отладочных окнах Visual Studio

.NET *
Большинство .Net разработчиков знакомы с лямбда-выражениями (lambda expressions) и активно их используют. Однако при попытке использовать их в таких отладочных окнах как Watch / Immediate и Locals, Visual Studio сообщит нам о том, что “Expression cannot contain lambda expressions”. На это есть свои причины, и они очень подробно изложены в этих постах. К сожалению, в них также отсутствует информация о решении данной проблемы. В то время как разработчики каждый день сталкиваются с необходимость фильтрации коллекций в режиме отладки и поддержка лямбда-выражений значительно упростила бы их труд.

Неужели есть способ?
Total votes 30: ↑25 and ↓5 +20
Views 1.6K
Comments 7

Универсальный репозиторий ADO.NET Entity

.NET *
Sandbox
Уважаемые программисты!
Не было печалиПонадобилось мне плотно поработать с ASP.NET MVC2 + Entity Framework, однако базовая функциональность работы с БД меня совсем не впечатлила, потому что нужно было каждый раз выбирать нужную коллекцию объектов из списка. Как избежать написания нескольких классов и использовать всего один — пойдет дальше речь.

Требования

Для начала определимся, что же собственно хотелось бы получиться на выходе.

Хочется удобно работать с объектами:
  • Добавлять.
  • Удалять.
  • Редактировать.
  • Получать по ID.
  • Получать список всех объектов.

Читать дальше →
Total votes 8: ↑6 and ↓2 +4
Views 6.1K
Comments 17

Конференция UnetaPlus открывает двери для разработчиков

Self Promo
image

Конференция UnetaPlus, на которой я буду выступать с докладом, пройдёт 1 октября в Харькове. Организаторы для своих целей арендовали выставочный центр «Радмир Экспохолл», большую и вместительную площадку.

Не трудно догадаться, что конференция целиком посвящена IT-сфере. Богатый состав докладчиков будет делиться опытом в таких сферах, как MANGO, SILVERLIGHT, ODATA, SQL Azure, Entity Framework и многое другое.

Всего планируется порядка 10 докладов, каждый из которых освещает определенную тематику. Любой разработчик найдёт для себя что-нибудь важное, интересное и актуальное в представленных темах. Ещё одна приятная новость – это «экспертная зона» — докладчики очень часто спешат выступить и сбежать, а задать им вопросы в неформальной обстановке не получается. На UnetaPlus такого не будет, потому что они будут всё время доступны для общения на специальной площадке. Помимо докладчиков, в нее приглашены специалисты (преимущественно MVP), с которыми можно будет познакомиться и пообщаться на интересующую вас тематику.

Читать дальше →
Total votes 11: ↑10 and ↓1 +9
Views 320
Comments 2

Учебный курс. Создание модели данных Entity Framework для приложения ASP.NET MVC

Microsoft corporate blog
Translation
На примере веб-приложения для Contoso University мы продемонстрируем создание приложений ASP.NET MVC с использованием Entity Framework, в функциональность которого будут входить такие возможности как принятие стуентов, создание курсов и назначение преподавателей.

Данные учебные материалы объяснят по шагам процесс создания веб-приложения для Contoso University. Вы можете скачать готовое приложение или создать его согласно приведенной последовательности шагов. Примеры приведены на C#, примеры кода доступны в C# и VB. Если у вас есть вопросы, косвенно касающиеся учебных материалов, вы можете задать их ASP.NET Entity Framework forum или Entity Framework and LINQ to Entities forum.

Обучение предполагает наличие знаний по работе с ASP.NET MVC в Visual Studio, в противном случае хорошее место для начала обучения ASP.NET MVC Tutorial. Если вы предпочитаете работать с ASP.NET Web Forms, обратите внимание на Getting Started with the Entity Framework и Continuing with the Entity Framework.

Читать дальше →
Total votes 36: ↑29 and ↓7 +22
Views 146K
Comments 5

Учебный курс. Реализация базовой CRUD-функциональности с Entity Framework в приложении ASP.NET MVC

Microsoft corporate blog
Translation
Это продложение цикла статей, посвященого разработке с помощью Entity Framework и ASP.NET MVC 3. Первую главу вы можете найти по следующей ссылке: Создание модели данных Entity Framework для приложения ASP.NET MVC.

В предыдущем уроке мы создали MVC-приложение, которое умеет хранить и показывать данные с использованием Entity Framework и SQL Server Compact. В этом уроке мы рассмотрим создание и настройку CRUD (create, read, update, delete)-функциональности, которую MVC scaffolding автоматически создает для вас в контроллерах и представлениях.

Note общепринятой практикой является реализация паттерна «репозиторий» для создания слоя абстракции между контроллером и слоем доступа к данным. Но это будет потом, в поздних уроках (Implementing the Repository and Unit of Work Patterns).

Читать дальше →
Total votes 20: ↑17 and ↓3 +14
Views 21K
Comments 1

Учебный курс. Сортировка, фильтрация и разбиение по страницам с Entity Framework в приложении ASP.NET MVC

Microsoft corporate blog
Translation
Это продложение цикла статей, посвященого разработке с помощью Entity Framework и ASP.NET MVC 3. Первые главы вы можете найти по следующим ссылкам: Создание модели данных Entity Framework для приложения ASP.NET MVC и Реализация базовой CRUD-функциональности с Entity Framework в приложении ASP.NET MVC.

В предыдущем уроке мы реализовали страницы для совершения CRUD-операций для сущностей Student. В этом уроке мы добавим сортировку, фильтрацию и разбиение по страницам, а также создадим страницу, на которой будет простая группировка.

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

image

Читать дальше →
Total votes 32: ↑26 and ↓6 +20
Views 23K
Comments 4

Учебный курс. Создание сложной модели данных для приложения ASP.NET MVC, часть 1

Microsoft corporate blog
Translation
Это продложение цикла статей, посвященого разработке с помощью Entity Framework и ASP.NET MVC 3. Первые главы вы можете найти по следующим ссылкам:
В предыдущих уроках вы научились работать с простой моделью данных, состоящей из трёх сущностей. В этом уроке вы добавите несколько сущностей и связей между ними и научитесь работать с аннотациями для управления классами моделей.

Результат будет выглядеть так:

image

Читать дальше →
Total votes 32: ↑27 and ↓5 +22
Views 12K
Comments 6

Учебный курс. Создание сложной модели данных для приложения ASP.NET MVC, часть 2

Microsoft corporate blog
Translation
Это продложение цикла статей, посвященого разработке с помощью Entity Framework и ASP.NET MVC 3. Первые главы вы можете найти по следующим ссылкам:
В предыдущих уроках вы научились работать с простой моделью данных, состоящей из трёх сущностей. В этом уроке вы добавите несколько сущностей и связей между ними и научитесь работать с аннотациями для управления классами моделей.

Изменения, касающиеся сущности Course


image42
Читать дальше →
Total votes 30: ↑23 and ↓7 +16
Views 18K
Comments 6