如何更改此代码以创建FK?这没有任何错误,控制台指示fk已创建。但是我没有在生成的数据库中看到fk ......
Create.Table("Level")
.WithIdColumn()
.WithColumn("Name").AsFixedLengthString(128).NotNullable();
Create.Table("Team")
.WithIdentityIdColumn()
.WithColumn("Number").AsFixedLengthString(256).NotNullable()
.WithColumn("LevelId").AsInt32().NotNullable().ForeignKey("Level", "Id")
虽然控制台指示已创建fk
,但它也不起作用Create.ForeignKey()
.FromTable("Team").ForeignColumn("LevelId")
.ToTable("Level").PrimaryColumn("Id");
答案 0 :(得分:0)
如果所有其他方法都失败了,你可以尝试编写sql命令来创建FK并使用'Execute([你的命令])函数在你的up函数中执行命令。
然而,您编写的两个示例都应该有效。我会尝试联系lib创建者并检查是否支持。
答案 1 :(得分:0)
报道了这个问题 https://github.com/schambers/fluentmigrator/pull/638。 等待解决方案。 现在我们需要使用原始sql的解决方法。