我有一个带有抽象基类和4-5子类的类层次结构。我想使用NHibernate的table-per-class-hierarchy映射方法将这些映射到单个数据库表,以减少我的查询生成的连接数。
但是,其中一个子类具有其他子类缺少的非null属性。这意味着每当我尝试保存其他一个子类型的实体时,我都会收到一条SQL错误,指出丢失的字段不能为空。
这是否意味着每个层次表只与我的域模型不兼容,或者还有其他我需要做的事情?
答案 0 :(得分:1)
对于没有该属性的类,您希望该字段包含什么?
因为它可能是NULL,所以你应该让它可以为空,但在你的模型/业务逻辑中验证它。