如何更改旧迁移的名称(重命名)?它与我的自定义标识用户的名称冲突。
更改身份用户会更容易吗?我不知道如何重命名,每个教程都只是为了简单起见创建一个新的数据库(任何关于它的信息也很受欢迎)。
是否像在以下位置重命名一样简单:
答案 0 :(得分:1)
如果只是类名冲突,只需重命名该类就足够了。
如果确实想要重命名整个迁移,那么您的步骤看起来是正确的。确保检查*.Designer.cs
文件以重命名包含名称的字符串文字。
答案 1 :(得分:0)
就我通过谷歌搜索来到这里以来对实际问题的直接回答:
这不是简单的重命名迁移文件的操作。尤其是如果迁移已经到客户端数据库。
我发现EF仍然记得某个旧迁移的名称,并且即使重命名了迁移文件,设计器文件和类名,最终仍将旧名称插入__EFMigrationsHistory
表中。
对我来说,将Up和Down方法中的所有代码复制到记事本中比较容易,使用remove-migration
删除错误命名的迁移,然后使用add-migration
添加带有所需的名称,然后复制回我保存的记事本中的所有代码。但是,只有在迁移是最新的迁移时,这种方法才起作用。
如果是较旧的版本,已经在客户端数据库中使用,或者已被其他迁移取代,则您将不得不担心手动更新__EFMigrationsHistory
表,以及EF迁移名称的存储位置,即可能会变得非常棘手。