У меня есть таблица CUSTOMER
, где CUSTOMER_ID
- первичный ключ.
Таблица
CREATE TABLE [CUSTOMER](
[CUSTOMER_ID] [int] NOT NULL,
[START_DATE] [varchar(30)] NOT NULL,
CONSTRAINT [PK_CUSTOMER] PRIMARY KEY CLUSTERED ( [CUSTOMER_ID] ASC .....
Mapping
public class CustomerMap : ClassMap<Customer> {
public CustomerMap()
{
WithTable("CUSTOMER");
Id(x => x.CustomerID, "CUSTOMER_ID");
Map(x => x.Name, "NAME");
}
}
Мне нужно обработать присвоение свойства CustomerID вручную. Например, я создал нового Customer с CustomerID = 777 и именем «stackoverflow».
Когда я вызываю метод Session.SaveOrUpdate (customer);
Я хочу, чтобы NHibernate генерировал мне SQL следующим образом:
INSERT INTO [CUSTOMER] ([CUSTOMER_ID] ,[NAME]) VALUES (777,'stackoverflow')
К сожалению, я получаю ошибки.
Основная проблема заключается в том, что Nhibernate пытается создать для меня ID. Но я хочу сохранить свою сущность точно с 777.
Я думаю, что должен быть способ настроить отображение для Id () другим способом, так что это позволит мне делать то, что я хочу.
Пожалуйста, помогите.