簡體   English   中英

代碼優先 - 實體框架 - 如何公開外鍵

[英]Code First - Entity Framework - How to expose foreign keys

我有以下數據對象:

public class Customer : System.Data.Entity.ModelConfiguration.EntityTypeConfiguration<Customer>
{
    public Customer ()
    {
        // this.HasRequired(a => a.EyeColorType).WithMany().HasForeignKey(a => a.EyeColorTypeID);
    }

    [Key]
    public int ID { get; set; }

    [Required]
    [MaxLength(100)]
    public string FirstName { get; set; }

    [Required]
    [MaxLength(100)]
    public string LastName { get; set; }

    [Required]
    [ForeignKey("EyeColorTypeID")]
    public EyeColorType EyeColorType { get; set; }
    // public int EyeColorTypeID { get; set; }

}

}

我想要做的是,在生成的Customer屬性上公開EyeColorTypeID字段,並在DB中指定名稱。

如果我刪除這兩個注釋,它可以工作,但我想為此使用數據注釋。 [ExposeForeignKey("EyeColorTypeID")] ,讓它全部自動發生。

這可能嗎? 我該怎么辦呢?

只需將其添加到模型中並使導航屬性為虛擬(對於延遲加載):

public class Customer : //etc
{

   //your stuff

   [Required]
   public int EyeColorTypeID {get; set;}

   public virtual EyeColorType EyeColorType { get; set; }
}

EF的命名約定將EyeColorTypeID綁定到EyeColorType導航屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM