Основы Nhibernate [GeekBrains]
ฝัง
- เผยแพร่เมื่อ 21 ก.ย. 2024
- Начни карьеру с бесплатного курса "Основы программирования" goo.gl/jTP4nP
Nhibernate - это решение объектно-реляционного маппинга для платформы .NET. Фреймворк позволяет делать маппинг объектно-ориентированных моделей к традиционным БД. Основное преимущество - маппирование классов .NET к таблицам БД, а также из типов данных CLR в типы SQL.
На вебинаре мы:
- посмотрим на основные особенности Nhibernate,
- поговорим об архитектуре реляционных баз данных,
- напишем простое приложение, которое будет загружать бизнес-объекты из баз данных и сохранять измененные объекты.
Подписывайся на наш канал и смотри новые видео первым: / progliveru
Проходи бесплатные курсы: goo.gl/4gG8TL
Выбери профессию: goo.gl/WSdYSE
Смотри вебинары: goo.gl/bBVKcb
Читай статьи: goo.gl/XfJNqc
Проверяй знания: goo.gl/gqKSsw
ВКонтакте geekbra...
Facebook / geekbrains.ru
Одноклассники ok.ru/geekbrains
Telegram t.me/geekbrain...
Instagram / geekbrains.ru
#nhibernate #фреймворки #geekbrains #программирование #курсыпрограммирования
Остались вопросы:
1. Не корректно выбран тип отношения между героем и профессией: один-ко-многим. Это не верно, поскольку одна профессия, допустим "учитель", может быть у разных героев. А у Вас получается, что название профессии зависит от конкретного героя, что странно - у одного героя может быть профессия "учИтель", а у другого "учЯтель", какой из этих названий корректно? Очевидно, что между объектами герой и профессия связь многие-ко-многим, можете показать как такие связи реализуются?
2. Запрос на чтение данных не показателен: нагляднее было бы показать вывод всех записей из таблицы "герой" (аналог select * from hero), а не поиск одной записи по значению hp.
3. Вы говорите, что задаете опцию каскадирования для связи Hero-Profession, однако в Вашем примере каскадирование не реализовано.
Как вы собираетесь рефакторить xml при изменении бизнес сущностей?
Возникла ошибка при первом запуске
"HibernateException: The DbCommand and DbConnection implementation in the assembly System.Data.SqlClient could not be found. Ensure that the assembly System.Data.SqlClient is located in the application directory or in the Global Assembly Cache. If the assembly is in the GAC, use element in the application configuration file to specify the full name of the assembly."
Оказалось необходимо было установить ещё и пакет для работы в SQL System.Data.SqlClient через тот же NuGet
Ещё есть проблема с тем, что таблицы каждый раз пересоздаются, и теряется вся информация...
Одно не пойму. Почему сиквел сервер?
Урок можно раза в 4 пожать если не тратить время на стенографию .
С 29 минуты. Инициализации производится тестами
xml? ох ох ох. что-то я передумал учить nHibernate
В коде мапимся, полюбому. В топку XML!
Есть вариация Fluent Nhibernate - без XML.