powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Nhibernate и автомапинг
2 сообщений из 2, страница 1 из 1
Nhibernate и автомапинг
    #37218135
crook
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть классы

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
public class HandbookEntity
    {
        public virtual long Code {get; set }
 
        public virtual string Value { get; set; }
 
        public virtual string Remarks { get; set; }
    }

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
public class Entity
    {
        public virtual long Id {get; set;}
 
        public virtual string Propertry1 { get; set; }
 
        public virtual HandbookEntity HandbookEntity { get; set; }
    }


Использовал автомапинг, получил все что надо, только в получаемой таблице HandbookEntity мне надо отключить автогенерацию ключевого поля,
т.е. я его должен задавать сам.
Подскажите как отключить генерацию, замучался уже.

Что использовать: соглашение или перекрытие мапинга?


Написал соглашение для ID полей сущностей.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
public class PrimaryKeyConvention : IIdConvention
    {
        public void Apply(IIdentityInstance instance)
        {
            instance.GeneratedBy.Native();
            instance.Column("Code");
        }
    }


Перекрыл для справочника автомапинг и задал ему генерацию ID assigned

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
public class PestMap : IAutoMappingOverride<Pest>
    {
        #region IAutoMappingOverride<Pest> Members
 
        public void Override( AutoMapping<Pest> autoMapping )
        {
            autoMapping.Id( x => x.Code ).GeneratedBy.Assigned();
        }
 
        #endregion
    }

При генерации записей все равно в справочнике генерируется id 1,2 и т.д.
В чем ошибка?
...
Рейтинг: 0 / 0
Nhibernate и автомапинг
    #37220893
glilya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crook,
Покажи код, которым ты маппишь класс
должно быть примерно так :
Код: plaintext
this.Id(x => x.ID).CustomSqlType("Serial").GeneratedBy.Native();
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Nhibernate и автомапинг
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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