Почему код EF-ядра сначала делает DateTime2 вместо DateTime? - PullRequest
0 голосов
/ 20 мая 2019

Сначала я очень новичок в коде EF-core, я хочу быть переменной в форме datetime, но его Datetime2. как я могу это исправить?

Это ядро ​​EF, код первый подход и сервер sql 2017

public class MB_Message
{
    [Key]
    [Column(Order = 1)]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int MessageID { get; set; }
    public DateTime? expireDateTime { get; set; }
    public string TypeName { get; set; }
    public bool IsForceLastSend { get; set; }
    public DateTime MessageDateTime { get; set; }
    public bool ReadOnce { get; set; }
    public string ExeCode { get; set; }
    [ForeignKey("MB_Queue")]
    public int QueueCode { get; set; }
    public int? UserID { get; set; }
    [ForeignKey("MB_MessageBody")]
    public int BodyID { get; set; }
    public bool Enable { get; set; }

}

1 Ответ

0 голосов
/ 20 мая 2019

В методе OnModelCreating вашего dbcontext добавьте следующее:

  protected override void OnModelCreating(ModelBuilder builder)
    {

        builder.Entity<MB_Message>()
            .Property(x=> x.MessageDateTime )
            .HasColumnType("datetime");
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...