Csharp/C#教程:外键映射到entity framework中的复合键分享


外键映射到entity framework中的复合键

尝试首先与entity framework代码建立以下关系。 以下代码不起作用我尝试了很多变化…有没有人有线索?

CONSTRAINT [FK_EVENT_Contact] FOREIGN KEY (Patient_ID,[Contact_ID]) REFERENCES [PatientContact](Patient_ID,Person_ID) public class PatientContact { [Key, Column(Order = 0)] [DatabaseGenerated(DatabaseGeneratedOption.None)] public int Person_ID { get; set; } public virtual Person Person { get; set; } [Key, Column(Order = 1)] [DatabaseGenerated(DatabaseGeneratedOption.None)] public int Patient_ID { get; set; } public virtual Patient Patient { get; set; } } public class Event { [Key] public int Event_ID { get; set; } [Required] public int EventType_ID {get;set;} public virtual EventType EventType { get; set; } [ForeignKey("Patient")] public int Patient_ID { get; set; } public virtual Patient Patient { get; set; } [ForeignKey("PatientContact")] public int Contact_ID { get; set; } public virtual PatientContact PatientContact { get; set; } } 

你有两个选择。

使用属性,例如:

 [ForeignKey("PatientContact"), Column(Order = 0)] public int Person_ID{ get; set; } [ForeignKey("PatientContact"), Column(Order = 1)] public int Patient_ID{ get; set; } public virtual PatientContact PatientContact { get; set; } 

使用模型构建器(流畅的api)

上述就是C#学习教程:外键映射到entity framework中的复合键分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

 modelBuilder.Entity() .HasRequired(p => p.PatientContact) .WithMany() .HasForeignKey(p => new {p.Person_ID, p.Patient_ID}); 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1003960.html

(0)
上一篇 2021年12月28日
下一篇 2021年12月28日

精彩推荐