我使用EF Core 2.1 Code-First. SELECT * FROM [dbo].[__ MigrationsHistory]从2列返回表 MigrationId ProductVersion 我正在寻找一种方法来添加一个名为AppliedOn的列,它将存储迁移实际应用于数据库的时间. 你可
SELECT * FROM [dbo].[__ MigrationsHistory]从2列返回表
> MigrationId
> ProductVersion
我正在寻找一种方法来添加一个名为AppliedOn的列,它将存储迁移实际应用于数据库的时间.
你可以在SQL中做到这一点:alter table [dbo].[__MigrationHistory] add AppliedOn Datetime default getdate()
当EF将迁移应用于数据库时,它会在表__MigrationHistory中插入一行.此SQL脚本在getDate()中将ApplicationOn列添加为默认值.插入行时,该列将包含此插入的当前日期时间.
或者,您可以使用EF Migration执行相同的操作:
通过添加到第一次迁移(或新迁移):
public partial class Intial : Migration { protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.AddColumn<DateTime>( name: "AppliedOnUtc", schema: "Conversations", table: "__MigrationsHistory", defaultValueSql: "GETUTCDATE()" ); } .... }