Me tomó un tiempo encontrar una respuesta para esto, así que pensé en compartir el amor.Uso de la asignación de NHibernate por código: No se puede insertar un valor explícito para la columna de identidad en la tabla 'DietUser' cuando IDENTITY_INSERT está establecido en OFF
Cuando uso la nueva asignación de NHibernate por código con SQL Server no puedo guardar una entidad. Al guardar una entidad un System.Data.SqlClient.SqlException se lanza con el siguiente mensaje (menos el nombre de la tabla):
"No se puede insertar valor explícito para la columna de identidad en la tabla 'DietUser' cuando IDENTITY_INSERT está en OFF "
Mi tabla utiliza un identificador de la identidad y la entidad & asignaciones aspecto:
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);
}
}
Yo sé cómo me Ubicación del uso de mapeo XML pero quiero utilizar el incorporado en la asignación de código si es posible.
¿Está utilizando GUID como columna de identidad? –
No, solo la columna de identidad int estándar que verá en la mayoría de las tablas de servidor sql. – bressain