powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Could not compile the mapping document
6 сообщений из 6, страница 1 из 1
Could not compile the mapping document
    #37832820
pyroman69
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет.
Есть файлы:
Authentification.cs
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
namespace DataAccess.Entities.Domain
{
    /// <summary>
    /// Аутентификация
    /// </summary>
    public class Authentification
    {
        /// <summary>
        /// Идентификатор аутентификации
        /// </summary>
        public virtual int Id { get; set; }

        /// <summary>
        /// Значение аутентификации
        /// </summary>
        public virtual string Value { get; set; }
    }
}


Authentification.hbm.xml
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
                   assembly="DataAccess.Entities"
                   namespace="DataAccess.Entities.Domain">
  <class name="Authentification" table="Authentification">
    <id name="Id">
      <column name="authentification_id" not-null="true" />
      <generator class="identity"/>
    </id>
    <property name="Value" column="authentification_value"/>
  </class>
</hibernate-mapping>


hibernate.config
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<?xml version="1.0" encoding="utf-8"?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
  <session-factory name="DataAccess.Database.NHibernate">
    <property name="connection.connection_string">Data Source=источник;Initial Catalog=rdsystem;User ID=логин;Password=пароль</property>
    <property name="dialect">NHibernate.Dialect.MsSql2008Dialect</property>
    <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
    <property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>    
    <mapping assembly="DataAccess" />
  </session-factory>
</hibernate-configuration>


Пытаюсь создать сессию:
Код: c#
1.
2.
3.
4.
5.
6.
7.
private static ISessionFactory CreateSessionFactory()
{            
    var assembly = System.Reflection.Assembly.GetExecutingAssembly();
    Configuration config = new Configuration();
    config = config.Configure(assembly, "DataAccess.hibernate.config");//Тут ошибка
    return config.BuildSessionFactory();
}


На строке "Тут ошибка" вылетает Exception:
Could not compile the mapping document: DataAccess.Entities.Mapping.Authentification.hbm.xml
InnerException:
persistent class DataAccess.Entities.Domain.Authentification, DataAccess.Entities not found
И еще один InnerException:
Невозможно загрузить файл или сборку \"DataAccess.Entities\" или один из зависимых от них компонентов. Не удается найти указанный файл.
В чем ошибка, почему не хочет запускаться? Какой файл найти не может, не пойму?
Тут скрин проекта в студии и таблицы в БД:

я не волшебник, я только учусь...
...
Рейтинг: 0 / 0
Could not compile the mapping document
    #37832899
pyroman69
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавляю другой класс:
UserRights.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.
namespace DataAccess.Entities.Domain
{
    /// <summary>
    /// Права доступа
    /// </summary>
    public class UserRights
    {
        /// <summary>
        /// Идентификатор прав доступа
        /// </summary>
        public virtual int Id { get; set; }

        /// <summary>
        /// Значение
        /// </summary>
        public virtual string Value { get; set; }

        /// <summary>
        /// Описание
        /// </summary>
        public virtual string Description { get; set; }
    }
}


UserRights.nbm.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"
                   assembly="DataAccess.Entities"
                   namespace="DataAccess.Entities.Domain">
  <class name="UserRights" table="UserRights">
    <id name="Id">
      <column name="right_id" not-null="true" />
      <generator class="identity"/>
    </id>
    <property name="Value" column="right_value"/>
    <property name="Description" column="right_description"/>    
  </class>
</hibernate-mapping>


а класс Authentification.cs выкидываю из проекта. Ошибки нет, но если сделать
Код: c#
1.
CreateSessionFactory().OpenSession().CreateCriteria<Domain.UserRights>().List<Domain.UserRights>();


Count коллекции равен 0, хотя в БД 4 записи.
...
Рейтинг: 0 / 0
Could not compile the mapping document
    #37832908
pyroman69
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
framework проекта 3.5, NHib 3.3.0
...
Рейтинг: 0 / 0
Could not compile the mapping document
    #37832938
pyroman69
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ой-ой-ой, про 2й пост забываем, там ошибся с расширением файла UserRights.nbm.xml, а правильно UserRights. h bm.xml. Теперь и на него ругается(
...
Рейтинг: 0 / 0
Could not compile the mapping document
    #37833167
SolYUtor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pyroman69,

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly=" DataAccess.Entities "
namespace="DataAccess.Entities.Domain">

а как у вас реально сборка называется? DataAccess?.
Собственно, внутренняя ошибка намекает на это:
Невозможно загрузить файл или сборку \"DataAccess.Entities\" или один из зависимых от них компонентов. Не удается найти указанный файл.
...
Рейтинг: 0 / 0
Could not compile the mapping document
    #37835961
pyroman69
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SolYUtorpyroman69,

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly=" DataAccess.Entities "
namespace="DataAccess.Entities.Domain">

а как у вас реально сборка называется? DataAccess?.
Собственно, внутренняя ошибка намекает на это:
Невозможно загрузить файл или сборку \"DataAccess.Entities\" или один из зависимых от них компонентов. Не удается найти указанный файл.
спасибо за помощь. С проблемой разобрался еще день написания поста, Вы прав, я запутался с наименованиями сборки, assembly просто надо было указать "DataAccess"...жаль Вы чуть раньше не подсказали)))
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Could not compile the mapping document
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]