Tôi đang cố tạo cột 'thời gian (7)' trong bảng có Mã khung thực thể trước tiên. Đây là Entity tôi:Loại 'thời gian' của SQL trong Mã khung thực thể Đầu tiên
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; }
}
Như bạn có thể thấy tôi đang cố gắng để thiết lập các loại cơ sở dữ liệu cho các cột StartTime và EndTime đến "thời gian" nhưng tôi nhận được lỗi này:
(112,12) : error 2019: Member Mapping specified is not valid. The type 'Edm.DateTime[Nullable=False,DefaultValue=,Precision=]' of member 'StartTime' in type 'ShiftDetail' is not compatible with 'SqlServer.time[Nullable=False,DefaultValue=,Precision=7]' of member 'StartTime' in type 'CodeFirstDatabaseSchema.ShiftDetail'.
tôi cũng đã thử với TypeName = "time (7)" nhưng tôi nhận được lỗi khác này:
(104,6) : error 0040: The Type time(7) is not qualified with a namespace or alias. Only primitive types can be used without qualification.
Làm cách nào để tạo cột thời gian với mã trước? (tốt nhất là không có API thông thạo)
Xin cảm ơn trước.
Nếu bạn sử dụng trình thiết kế EDMX, loại dữ liệu nào sẽ chọn cho cột thời gian của bạn? Có lẽ bạn không nên sử dụng 'DateTime', nhưng tôi không chắc loại đúng là gì, và đây là cách dễ dàng để tìm hiểu. – hvd