每次迁移是否可能有不同的种子数据?
自从首次迁移以来,数据库数据可能已更改。因此,不得在将来的迁移中使用它。但是在第一次迁移时我仍然想要它。
在软件包管理器控制台中使用以下命令添加新的空迁移:
Add-Migration DefaultAddressData
在此之后,为up和down方法创建sql脚本,该脚本生成并还原种子数据
namespace Northwind.CodeFirst.Migrations
{
using System;
using System.Data.Entity.Migrations;
public partial class DefaultAddressData : DbMigration
{
public override void Up()
{
this.Sql(@"INSERT INTO dbo.Addresses(Name, AddressLine1, AddressLine2, City, State)
VALUES ('John', 'House address 1', 'street address 1', 'city 1', 'some state'),
('Name 2', 'House address 2', 'street address 2', 'city 2', 'some state');
INSERT INTO dbo.Addresses(Name, AddressLine1, AddressLine2, City, State)
VALUES ('Name 3', 'House address 3', 'street address 1', 'city 2', 'some state');");
}
public override void Down()
{
this.Sql(@"DELETE FROM dbo.Addresses
WHERE NAME IN('John', 'Name 2', 'Name 3');");
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句