Я добавил EntityFramework.Migrations (Beta 1) в существующее приложение Code-First, которое проходит через некоторые изменения (как для возможностей миграции, так и для более тонкой настройки таблиц, которые я генерирую из моего API code-first) и столкнулся со сценарием GETDATE().
Я уже использовал пользовательский класс инициализатора в своем DbContext для запуска SQL-скриптов для установки некоторых полей и создания индексов в моей базе данных. Несколько моих скриптов AlterTable являются первичными только для установки полей со значениями по умолчанию (например, некоторые поля DateTime устанавливаются в GETDATE()). Я очень надеялся, что в EntityFramework.Migrations найдется ответ на этот вопрос, поскольку вы можете легко указать defaultValue, но пока что я его не вижу.
Есть идеи? Я очень надеялся, что следующие действия сработают волшебным образом. (Это же "волшебный единорог", в конце концов)
DateCreated = c.DateTime(nullable: false, defaultValue: DateTime.Now)
К сожалению, что логично, это установило мое значение по умолчанию на время, когда была выполнена команда Update-Database
.