|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.03.2014, 16:44 | #1 |
Пользователь
Регистрация: 10.06.2012
Сообщений: 44
|
xml-mapping NHibernate
Есть три таблицы - табл. Почтовый код связана многое к одному с табл. Город, которая связана многое к одному с табл. Страна. Соответственно есть три класса. В классе Страна есть List из городов, а в классе город - лист из обьектов класса почтовый код. Использую xml-mapping. Как нужно замапить эти связи между таблицами, чтобы при сохранении обьекта страна, сохранялись и города из List<City> этой страны, а для каждого города - почтовые коды?
|
12.03.2014, 16:58 | #2 |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
Ну у города же есть свойство "страна", а у почтового кода - свойство город. Так и замапить: в стране коллекцию городов, а в городе - коллекцию адресов
Для страны что-то вроде этого получится: Код:
Благодарить в репутацию. Проклинать — туда же
|
12.03.2014, 18:01 | #3 |
Пользователь
Регистрация: 10.06.2012
Сообщений: 44
|
Спасибо большое! Теперь города, и адреса вставляются в базу при сохранении страны.
Только в табл. город поля CountryID для этих городов - null, а в табл. адреса - CityID - null. Последний раз редактировалось Лета; 12.03.2014 в 18:07. |
12.03.2014, 20:51 | #4 |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
CountryID и CityID в файлах маппингов города и адреса замаплены? Если нет, то надо замапить. Если да, то перед сохранением следует проставить в городах и адресах значения Country и City.
Типа того: Код:
Благодарить в репутацию. Проклинать — туда же
|
12.03.2014, 22:43 | #5 |
Пользователь
Регистрация: 10.06.2012
Сообщений: 44
|
__________
Последний раз редактировалось Лета; 12.03.2014 в 22:50. |
12.03.2014, 22:47 | #6 |
Пользователь
Регистрация: 10.06.2012
Сообщений: 44
|
В классе город есть ссылка на страну, а в адресе - на город. Все связи замаплены. Вот так замаплены связи для города:
Код:
|
12.03.2014, 23:51 | #7 |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
Код:
см. пример кода из моего предыдущего поста
Благодарить в репутацию. Проклинать — туда же
|
13.03.2014, 11:23 | #8 |
Пользователь
Регистрация: 10.06.2012
Сообщений: 44
|
Заработало!))) Большое спасибо!
Так же по-идее должно быстрее работать, чем если бы каждый объект - страну, города, адреса, сохраняли по-очереди? Просто в программе в базу заносится большое количество записей, и она прилично так из-за этого подвисает. Может, есть еще какие-нибудь способы ускорить сохрание обьектов в базе? |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
File Mapping | lowercase | Win Api | 12 | 17.04.2013 15:13 |
Подключение к Interbase через NHibernate | Axilees | Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) | 1 | 15.03.2012 08:09 |
Nhibernate | nats | Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) | 1 | 01.04.2011 11:10 |
File Mapping | Gambler | Win Api | 1 | 13.08.2010 11:40 |
Свой PORT MAPPING (NAT) | exploys | Работа с сетью в Delphi | 0 | 05.06.2010 01:24 |