gpt4 book ai didi

entity-framework - EF迁移:自动迁移中的RenameColumn?

转载 作者:行者123 更新时间:2023-12-03 07:28:39 25 4
gpt4 key购买 nike

如果重命名属性,则Visual Studio IDE足够聪明,可以帮助您在整个代码中重构重命名该属性。如果该重命名位于EF迁移中使用的模型上,并且您运行标准的自动迁移,例如:

update-database -f

您将获得:
AddColumn("NewName"...
DropColumn("OldName"...

不是您想要的。显然,此时运行Add-Migration将使您进入并手动将这2个调用更改为对RenameColumn的单个调用,但是有什么方法可以使自动迁移自动执行此操作?某种我不正确的属性重命名方法,也许吗?

我在VS2012中使用EF 5.0,但此行为也出现在EF 4.3.1和VS2010中。

最佳答案

迁移无法自动检测到属性和列的重命名。支架式迁移将包含一个拖放操作,您需要将其更改为重命名。

如果仅重命名列(通过向属性添加[Column]批注),则可以将其检测为重命名,因为我们可以匹配映射到该列的属性的名称。

我们确实考虑过在Add-Migration命令中添加一个–Renames开关,但是最终我们决定,编辑生成的代码比在命令行中计算提供重命名的语法要容易。

〜花wan

关于entity-framework - EF迁移:自动迁移中的RenameColumn?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12355833/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com