0
我有一个表空间映射可空的FK约束。在我流利的映射,我做的事情,像这样:流利的NHibernate插入空FK
public enum PlayerPosition
{
None = 0,
Forward = 1
//etc
}
实体
public virtual PlayerPosition? Position { get; set; }
Map(x => x.Position).Column("PlayerPositionId").CustomType< PlayerPosition>();
时PlayerPosition被设置为“无” NHibernate的将插入空我想发生的。我不知道如何做到这一点。
所以,你想有*两个*'null',无论是'PlayerPosition.None'或实际'null'值的表示?为什么?那么存储的'null'值是什么意思呢,那么这是否意味着'PlayerPosition'属性应该被初始化为'None'或'null'?看起来更简单/清洁的解决方案是将枚举与数据库中的实际对齐,并处理映射层(即NHibernate实体和域或表示模型之间的映射层)中的任何奇怪的映射。我也没有在这里看到FK('References') - 只是一个属性映射? – Aaronaught
我不加入它作为参考我只是映射它。是的,我想映射PlayerPosition.None映射到数据库中的空引用。这不是关于数据库设计或对齐的问题,而是关于如何映射问题的问题。有些东西不在我的控制之下。 –