我有一个类似的表结构
TaskProgress
> ProgressID
> TaskID
> AssignmentID
> UserID
任务
> TaskID
> AssignmentID
> Taskname
每个任务可以在不同的任务中分配.这意味着任务进度的唯一任务只能由AssignmentID和TaskID字段建立.
我试图用这个:
References(x => x.Template) .Columns() .PropertyRef()
但是无法得到如何映射连接多列,任何想法?
解决方法 我假定您在示例代码中使用PropertyRef,这两列不会形成复合主键.如果是这样,那么你没有运气,因为property-ref只能接受一个属性.根据 issue NH-1722的评论,这个功能显然在Hibernate中可用,但尚未移植到NHibernate.更新:
您添加的模式看起来像一对多对数,与任务和分配之间有额外的数据关系. TaskProgress是Task和Assignment之间的链接表.如果TaskProgress没有附加的UserID字段,那么您可以将其建模为一个简单的多对多.因为链接表有额外的数据,它会变得更复杂一些.
具有附加数据的多对多通常通过创建表示链接表(TaskProgress)的对象进行建模,并将关系建模为两个一对多关系.也就是说,任务和作业与TaskProgress有一对多的关系. TaskProgress具有任务,作业和用户的属性.
总结以上是内存溢出为你收集整理的c# – 具有多个列的多对一全部内容,希望文章能够帮你解决c# – 具有多个列的多对一所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)