2

私のモデルには、曜日ごとのデータを含む詳細テーブルがあるため、次の定義があります。

public class JournalDay
{
    public int JournalID { get; set; }
    public DayOfWeek Day { get; set; }
    public TimeSpan From { get; set; }
    public TimeSpan To { get; set; }

    public virtual Journal Journal { get; set; }
}

EF Fluent API マッピング クラスでは、複合キーを次のように定義します。

HasKey(jd => new { jd.JournalID, jd.Day });

しかし、Entity Framework によって生成されたテーブル構造には、主キーの最初の列しかありません。

CONSTRAINT [PK_dbo.Journals] PRIMARY KEY CLUSTERED 
(
    [JournalID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)

この問題は、2 番目の列が DayOfWeek 列挙型であることが原因ですか?? 以前に複合キーで列挙型を使用したことがありますが、この問題は発生しませんでした

4

0 に答える 0