在我当前的项目中,工作流有注释。请看一下下面的代码。
[CompositeId]
[KeyProperty(1, Column = "datum", Name = "Date", TypeType = typeof(DateTime))]
[KeyManyToOne(1, Column = "workflow_id", Name = "Workflow", ClassType = typeof(Workflow))]
public virtual IWorkflow Workflow { get; set; }
[Property(Column = "kommentar")]
public virtual string CommentText { get; set; }
public virtual DateTime Date { get; set; }
归根结底,这描述了这种关系
workflows(1)<---->(n)comments
当保存这种类型的实体时,数据库会报告一个约束冲突,表示列“datum”不能为null,而不是null(对象有一个值)。
我认为定义一个KeyProperty就足以让这个字段持久化,但显然NHibernate是以另一种方式看待它的。。。
有人看到这个映射中有错误吗?