Задавайте вопросы, мы ответим
Вы не зашли.
Подскажите какой-нибудь ORM для базы данных MySQL (.NET, C#). Сейчас использую Subsonic 3.0.0.3. Но в нем столько багов, что я с ним уже намучился.
Основные требования:
- прост в работе
- ориентирован на Linq
- отсутствие багов (не поддерживает несколько первичных ключей в таблице, косяки с кодировками при сохранением и выборке данных, поддержка всех основных типов данных БД)
- наличие мануалов(необязательно на русском) и поддержки
Либо можете порекомендовать что используете, только напишите почему нравится.
Спасибо.
Отредактированно IGV (28.09.2009 12:46:57)
Неактивен
Открыл микрософт, там написано, что Linq — это уже ORM. Что я делаю не так?
Неактивен
В этом случае мне нужно DAL уровень писать самому. А я хочу, чтобы DAL уровень генерился автоматически.
Неактивен
Это светлая мечта программистов — не писать программы, чтобы они генерились автоматически.
Насколько я помню фильмы, первая удачная попытка называлась скайнет, вторая — 13 этаж,
третья — матрица. Все три не очень добрые, так что не поленитесь и напишите
Неактивен
paulus, по вашей ссылке я не нашел там упоминание, что LINQ это ORM. Вот почитайте http://ru.wikipedia.org/wiki/ORM
Я говорю про уровень DAL.
В общем сейчас мой выбор остановился на NHibernate.
Неактивен
ORM == object to relational. Если я беру объект и оно само строит запросы SQL,
то это ORM. LINQ строит SQL при изменении объектов. Значит, LINQ — ORM
А вообще, конечно, все ORM — зло
Неактивен
нет. ORM - Object relation mapping - объектно реляционная проекция. Т.е. она преобразует таблицы в классы к которым я обращаюсь в программе. Она может быть построена на LINQ.
Суть ORM заключается в том, что при внесении каких-либо изменений в базу данных не нужно было бы каждый раз перекодивать уровень DAL, он перекодивается автоматически. Чем мне понравился subsonic 3, тем что он построен на шаблонах для Visual Studio (tt файлы), которые можно править "под себя".
Неактивен
Ладно, сути спора тут нет, я рад, что Вы нашли себе программу, которая удовлетворяет
Вашим высоким идеалам ORM, а я буду понимать это определение так, как нравится мне —
не как что-то сложное и умное, а как что-то простое и глупое
Неактивен