我们一直在使用与我们的采购订单相关联的复杂类型CreditCardTransaction
。它应该是它自己的实体,我现在正在努力解决这个问题。
您将如何编写迁移:
[ComplexType()]
public class CreditCardTransaction
{
public String SomeTransactionData { get; set; }
}
进入这个实体:
public class CreditCardTransaction
{
public int Id { get; set; }
public String SomeTransactionData { get; set; }
}
这是为我生成的。我可以轻松地将原始表中的数据移动到另一个表吗?
public partial class test : DbMigration
{
public override void Up()
{
CreateTable(
"CreditCardTransactions",
c => new
{
Id = c.Int(nullable: false, identity: true),
SomeTransactionData = c.String()
})
.PrimaryKey(t => t.Id);
AddColumn("PurchaseOrder", "Transaction_Id", c => c.Int());
AddForeignKey("PurchaseOrder", "Transaction_Id", "CreditCardTransactions", "Id");
CreateIndex("PurchaseOrders", "Transaction_Id");
DropColumn("PurchaseOrders", "Transaction_SomeTransactionData");
}
// Down() snipped
}
答案 0 :(得分:3)
我相信你可以。修改您的Up
方法,然后调用DropColumn
使用Sql
方法,并使用自定义SQL将数据从PurchaseOrders
传输到CreditTransactions
并修复FK关系。