public class Paper Map : IAutoMappingOverride<Paper >
{
public void Override(AutoMapping<Paper> mapping)
{
mapping.Map(x => x.ReferenceNumber).Not.Nullable();
}
}
Int32 не является обнуляемым типом по умолчанию. Int32? может быть необнуляемым, просто указав его как Int32.
Вы можете использовать условные обозначения, чтобы сделать это автоматически. Я не уверен, какое соглашение использовать, но взгляните на FluentNHibernate.Conventions.Instances, чтобы найти правильный. Это будет выглядеть так.
public class ColumnConvention : IColumnConvention
{
public void Apply(FluentNHibernate.Conventions.Instances.ColumnInstance instance)
{
if (instance.EntityType.IsDefined(typeof(NotNullAttribute), false))
instance.NotNull = true;
}
public void Apply(FluentNHibernate.Conventions.Instances.IColumnInstance instance)
{
return;
}
}
Просто добавьте это соглашение к вашему автопроявлению.