我正在尝试使用 Entity Framework Code First 在表中创建一个“时间(7)”列。这是我的实体:
public class ShiftDetail
{
public long Id { get; set; }
[Required]
public int DayOfWeek { get; set; }
[Required]
[Column(TypeName="time")]
public DateTime StartTime { get; set; }
[Required]
[Column(TypeName = "time")]
public DateTime EndTime { get; set; }
public long ShiftId { get; set; }
public virtual Shift Shift { get; set; }
}
如您所见,我正在尝试将 StartTime 和 EndTime 列的数据库类型设置为“时间”,但出现此错误:
(112,12):错误 2019:指定的成员映射无效。'ShiftDetail' 类型中成员 'StartTime' 的类型 'Edm.DateTime[Nullable=False,DefaultValue=,Precision=]' 与 'SqlServer.time[Nullable=False,DefaultValue=,Precision=7]' 不兼容'CodeFirstDatabaseSchema.ShiftDetail' 类型中的成员 'StartTime'。
我也尝试过 TypeName="time(7)" 但我得到了另一个错误:
(104,6):错误 0040:类型 time(7) 没有使用命名空间或别名进行限定。只有原始类型可以在没有限定的情况下使用。
如何首先使用代码创建时间列?(最好没有流畅的 API)
提前致谢。