Здесь у меня есть миграция CodeFirst с использованием Ef6Удалить/Добавить «defaultvaluesql» колонки с помощью миграции
public override void Up()
{
CreateTable(
"dbo.MyTable",
c => new
{
Id = c.Int(nullable: false, identity: true),
Date = c.DateTime(nullable: false, defaultValueSql: "GETUTCDATE()"),
})
.PrimaryKey(t => t.Id);
}
Но мы обнаружили, что Date
не может быть настроена на вставку. Поэтому нам нужно выполнить миграцию, чтобы удалить параметр defaultValueSql
на столбце Date
.
Я попытался с помощью AlterColumn
без defaultValueSql
параметра
public override void Up()
{
AlterColumn("dbo.MyTable", "Date", c => c.DateTime(nullable: false));
}
public override void Down()
{
AlterColumn("dbo.MyTable", "Date", c => c.DateTime(nullable: false, defaultValueSql: "GETUTCDATE()"));
}
работает ни для вставки и обновления Date
, ни к определению таблицы.
CREATE TABLE [dbo].[MyTable] (
[Id] INT IDENTITY (1, 1) NOT NULL,
[Date] DATETIME DEFAULT (getutcdate()) NOT NULL,
);
Любой человек столкнулся с этой ситуацией, пожалуйста?
Создание конструктора с параметром datatime в качестве параметра делает работу вставки. –