我必须有一个现有的模式,我想用 nhibernate 映射它。
实体/表架构:
post {
pk_id
prod_id
prod_internid
title
}
tag {
pk_t_id
prod_id
prod_internid
name
}
一篇文章可以有多个标签,并且从标签到 post 表有一个外键约束,其中包含 prod_id 和 prod_internid 两列。
我试过这个:
PostMap {
// tags is a list
HasMany(x => x.tags).KeyColumns.Add("prod_id", "prod_internid");
}
TagMap {
References(x => x.post).Columns("prod_id", "prod_internid");//.ForeignKey();
}
我收到此错误:
NHibernate.FKUnmatchingColumnsException: Foreign key (FK98806C8630C05A78:tag [prod_id, prod_internid])) must have same number of columns as the referenced primary key (post [pk_id])
我怎样才能以正确的方式映射它?