the problem here is not NHibernate or Fluently, as you can notice the class BaseTenant
has a property named Key
public abstract class BaseTenant : Entity
{
public virtual string Name { get; set; }
public virtual string Key { get; set; }
}
this will raise a conflict at database generation because this is SQL Server reserve word so i just rename the property.