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)

这个问题是由第二列是 DayOfWeek 枚举引起的吗?我以前在复合键上使用过枚举,但从未出现过这个问题

4

0 回答 0