Asp.net mvc 4 在DB优先方法中设置一个关系?
我有一个表结构如下Asp.net mvc 4 在DB优先方法中设置一个关系?,asp.net-mvc-4,db-first,Asp.net Mvc 4,Db First,我有一个表结构如下 FeedbackTable Id Name ... ... ApprovalTable Id FeedbackId ... ... FeedbackTable和ApprovalTable具有1-1关系。当我生成模型(使用数据库优先方法)时,反馈模型具有审批表的icollection。我需要在实际模型类中将导航更改为1-1关系 我怎么做? 在创建模型之前,是否可以从数据库本身设置1-1关系 学生反馈模型 public partial cla
FeedbackTable
Id
Name
...
...
ApprovalTable
Id
FeedbackId
...
...
FeedbackTable和ApprovalTable具有1-1关系。当我生成模型(使用数据库优先方法)时,反馈模型
具有审批表
的icollection
。我需要在实际模型类中将导航更改为1-1关系
我怎么做?
在创建模型之前,是否可以从数据库本身设置1-1关系
学生反馈模型
public partial class StudentFeedback
{
public StudentFeedback()
{
this.StudentProjectApprovals = new HashSet<StudentProjectApproval>();
}
...
...
...
public virtual Icollection<StudentProjectApproval> StudentProjectApprovals { get; set; }
}
公共部分课堂学生反馈
{
公众学生反馈()
{
this.StudentProjectApprovals=new HashSet();
}
...
...
...
公共虚拟Icollection StudentProjectApprovals{get;set;}
}
您遇到的问题是,您首先提供给DB的模式不表示1-1关系,它是1-N关系,因此EF将这样处理
我怎么做
通过将
FeedbackId
同时设置为外键和主键。您还需要从ApprovalTable
表中删除Id
列如果我从ApprovalTable中删除Id
列,那么它的主键是什么???@ksg正如我在回答中所说,FeedbackId
必须同时是您的主键和外键。。。