0

私はクラスJobDescription と を持っている状況がありImageます。1対0または多数の関係を確立したい。JobDescriptionが存在する場合は、画像のコレクションがあるか、画像がまったくない可能性があります。同じことがImageとImageSectionにも当てはまります。私のクラスで私は正しくやっていますか?

public class JobDescription
        {
            public int JobDescriptionID { get; set; }

           // Other attributes and navigations


            public int? ImageID { get; set; }

            [ForeignKey("ImageID")]
            public virtual List<Image> Image { get; set; }

         }

      public class Image
        {
            public int ImageID { get; set; }

            public string ImageName { get; set; }

            public int? ImageSectionID { get; set; }

            [ForeignKey("ImageSectionID")]
            public virtual ImageSection ImageSection { get; set; }


        }
4

1 に答える 1

0

外部キー プロパティは、関係の「多」側ではなく、「一」側に属します。モデル クラスは次のようになります。

public class JobDescription
{
    public int JobDescriptionID { get; set; }

    // Other attributes and navigations

    public virtual List<Image> Image { get; set; }
}

public class Image
{
    public int ImageID { get; set; }

    public string ImageName { get; set; }

    public int? JobDescriptionID { get; set; }

    [ForeignKey("JobDescriptionID")]
    public virtual JobDescription JobDescription { get; set; }
}

についても同様の関係ですImageSection。画像に必ず が必要な場合は、ではJobDescriptionなくのタイプである必要がありJobDescriptionIDます。この例では、EF は命名規則によって FK プロパティを認識するため、属性は必要ありません。Imageintint?ForeignKey

于 2012-06-23T11:35:15.337 に答える