Я искал об этой проблеме, было много вопросов об этом, но все ответы не были полезны, это не решило мою проблему. Во-первых, я не могу внести какие-либо изменения в базу данных, я должен сохранить определение столбца в базе данных, так как я могу решить эту проблему?
ОПРЕДЕЛЕНИЕ БАЗЫ ДАННЫХ:
[DeletedDate] [datetime] NULL,
C # ПРЕДСТАВИТЕЛЬСТВО КОДА:
public DateTime? DeletedDate { get; set; }
Я получил ошибку:
Преобразование типа данных datetime2 в тип данных datetime привело к значению вне допустимого диапазона.
Заявление было прекращено.
в System.Data.SqlClient.SqlConnection.OnError (исключение SqlException, логическое breakConnection, действие`1 wrapCloseInAction) ....
Я пробовал это, но у меня ничего не работает
[Column(TypeName = "datetime2")]
public DateTime? PropertyName { get; set; }
РЕДАКТИРОВАТЬ: Проблема была в том, что я пытался отправить 0001/01/01 ... в значение datetime в sql. и это вызвало проблему.
API-интерфейс FLUENT решил мою проблему.
entity.Property(e => e.CreatedDate).HasColumnName("CreatedDate").HasDefaultValueSql("(getdate())");
entity.Property(e => e.UpdatedDate).HasColumnName("UpdatedDate").HasDefaultValueSql("(getdate())");