Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
85 / 33 / 12
Регистрация: 12.03.2011
Сообщений: 234
Записей в блоге: 2
1
MySQL

NHibernate mapping

30.11.2014, 23:21. Показов 2468. Ответов 2

Доброго времени суток!

Есть база данных и соответственно мое приложение конструкцию взял из книги по NHibernate.
Ну, а теперь меньше слов - больше кода

Employee.cs
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
namespace myDatabasePoligon
{
    class Employee
    {
        public int id;
        public string name;
        public Employee manager;
        public string SayHello()
        {
            return string.Format("'Hello World!', said {0}.", name);
        }
    }
}
Program.cs
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// ... Code before ...
 
static ISession OpenSession()
        {
            if (factory == null)
            {
                var c = new Configuration();
                try
                {
                    c.AddAssembly(Assembly.GetCallingAssembly());
                    c.Configure("hibernate.cfg.xml");
                    factory = c.BuildSessionFactory();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    throw;
                }
            }
            return factory.OpenSession();
        }
 
// ... Code behind ...
hibernate.cfg.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
 
  <!-- an ISessionFactory instance -->
  <session-factory>
 
    <!-- properties -->
    <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
    <property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property>
    <property name="connection.connection_string">Server=localhost;Database=dbtest;User ID=root;Password=test;CharSet=utf8</property>
    <property name="dialect">NHibernate.Dialect.MySQL5Dialect</property>
 
    <!-- mapping files -->
    <mapping resource="myDatabasePoligon.Employee.hdm.xml" assembly="myDatabasePoligon" />
  </session-factory>
 
</hibernate-configuration>
Employee.hdm.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" 
                   namespace="myDatabasePoligon"
                   assembly="myDatabasePoligon">
  <class name="myDatabasePoligon.Employee, myDatabasePoligon" table="Employees">
    <id name="id" access="field">
      <generator class="native" />
    </id>
    <property name="name" access="field" column="name"/>
    <many-to-one access="field" name="manager" column="manager"
    cascade="all"/>
  </class>
</hibernate-mapping>
А теперь собственно корень проблемы:
Исключение: Could not compile the mapping document: myDatabasePoligon.Employee.hdm.xml

Где тут ошибка в описании класса?

Заранее спасибо!
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.11.2014, 23:21
Ответы с готовыми решениями:

NHibernate выдает ошибку "Could not compile the mapping document"
Добрый вечер! Пытаюсь подключится к бд с помощью NHibernate. Открываю подключение: var session =...

Nhibernate OneToOne(or zero)
Добрый вечер, использую NHibernate, и все шло хорошо до маппинга OneToOne, когда я пытаюсь получить...

NHibernate MySql
Здравствуйте, подскажите в чем ошибка Пытаюсь подключится к MySql sessionFactory =...

NHibernate. Материализация данных
Суть проблемы изложена тут ...

2
85 / 33 / 12
Регистрация: 12.03.2011
Сообщений: 234
Записей в блоге: 2
01.12.2014, 23:43  [ТС] 2
Есть ли такие кто хоть попробовал запустить мой проект?
0
581 / 368 / 63
Регистрация: 22.07.2009
Сообщений: 875
Записей в блоге: 4
02.12.2014, 06:57 3
Цитата Сообщение от Jazz411 Посмотреть сообщение
Есть ли такие кто хоть попробовал запустить мой проект?
NHibrnate вообще плохо обрабатывает циклические зависимости, а у вас таблица имеет поле ссылку на саму себя.
Вариантов решения тут несколько - сначала создать таблицу без ссылки на себя, а затем уже модифицировать.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.12.2014, 06:57

Nhibernate хранимые процедуры
Доброго времени суток Мне нужно создать хранимую процедуру в базе данных при маппинге процедура...

Доступ к данным через NHibernate
Здравствуйте! Никак не разберусь с принципом работы данной ОРМ. Задача: получить доступ к данным...

ОРМ NHibernate: не сохраняются данные в БД
Здравствуйте! Использую ОРМ NHibernate. Программа выполняется без ошибок, однако изменения в базу...

Формирование классов сущностей в NHibernate
Доброго времени суток! Ребята, скажите можно ли в C# в VS 2017 сформировать классы сущности с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru