Столбец Datetime и Entity framework
Моя модель данных (Entity Framework 6.1.3, ASP.NET MVC 5, Code First with an existing database, SQL Server 2016) включает в себя “Заглавие"стол с “Модифицированная дата” (значение datetime, Столбец DEFAULT (getdate)).
При создании новой записи в браузере пользователю предлагается ввести значение ModifiedDate вместо того, чтобы SQL Server применял их автоматически. Я попробовал несколько трюков, которые мог придумать (я даже создал триггер AFTER UPDATE в таблице, чтобы установить дату), но безуспешно. После удаления столбца ModifiedDate из модели и создания нового контроллера и представлений значения применяются SQL Server, но я больше не могу видеть эти значения.
Путем повторной установки столбца ModifiedDate и применения параметра [DatabaseGenerated(DatabaseGeneratedOption.Компьютерная)] атрибут я тогда в состоянии создать новую запись, но при редактировании существующей записи нового значения в поле modifieddate не создается, а только значение, которое отображается в текстовом поле modifieddate применяется (то есть дата, когда запись была создана). Мне интересно, как справиться с этой ситуацией. Я просто хочу, чтобы сервер применил значение ModifiedDate и смог увидеть это значение.
Вот код модели:
[Table("Title")] public partial class Title { public int TitleID { get; set; } [Required] [StringLength(50)] public string Title { get; set; } public DateTime ModifiedDate { get; set; } }
Заранее спасибо, Корбекс.
Что я уже пробовал:
Вместо этого я попробовал эту модель:
[Table("Title")] public partial class Title { public int TitleID { get; set; } [Required] [StringLength(50)] public string Title { get; set; } [DatabaseGenerated(DatabaseGeneratedOption.Computed)] public DateTime ModifiedDate { get; set; } }