Мне потребовалось некоторое время, чтобы найти ответ на этот вопрос, поэтому я поделился своей любовью.
При использовании нового сопоставления NHibernate по коду с SQL Server я не могу сохранить сущность.При сохранении сущности возникает System.Data.SqlClient.SqlException со следующим сообщением (без имени таблицы):
"Невозможно вставить явное значение для столбца идентификаторов в таблице 'DietUser', когда IDENTITY_INSERT имеет значениеустановлено на OFF. "
В моей таблице используется идентификационный идентификатор, а сущность и сопоставления выглядят так:
public class User
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual string Username { get; set; }
public virtual string Password { get; set; }
public virtual short DailyPoints { get; set; }
}
public class UserMapping : ClassMapping<User>
{
public UserMapping()
{
Id(x => x.Id);
Property(x => x.Name);
Property(x => x.Username);
Property(x => x.Password);
Property(x => x.DailyPoints);
}
}
Я знаю, как я сопоставлю это с использованием сопоставления XML, ноЯ хочу использовать встроенное отображение по коду, если это вообще возможно.