迁移文件夹的位置是如何确定的?
How is the location of the migrations folder determined?
有谁知道迁移文件夹的位置是如何确定的。
事后我添加了我的数据文件夹。但现在我得到了这个:
Data\Migrations 文件夹是我希望进行迁移的地方。但是,如您所见,它们位于根目录下的 Migrations 文件夹中。
添加迁移命令的迁移文件夹由命令的相应输出目录参数决定(--output-dir
或 -o
for CLI dotnet ef migrations add
and -OutputDir
for PMC Add-Migration
)。正如这两个命令的文档中所解释的那样:
The directory use to output the files. Paths are relative to the target project directory. Defaults to "Migrations".
所以你必须提供那个参数,例如
Add-Migration SomeMigration -OutputDir Data\Migrations
请注意,这也会更改迁移 类 命名空间。
现在,文档中没有提到的很酷的事情是您只需执行一次,因为下一个添加迁移命令实际上默认为最后一个迁移文件夹。
话虽如此,最好是在您要添加的第一个迁移中指定此项。
如果您想使用问题中所示的已添加的迁移修改现有项目,则手动将整个根“迁移”文件夹移动到“数据”,然后可选择更改所有项目的命名空间.cs
文件(包括 .designer.cs
)到 namespace {RootNamespace}.Data.Migrations
,你就完成了。下一次迁移将添加到那里,无需指定文件夹。
有谁知道迁移文件夹的位置是如何确定的。
事后我添加了我的数据文件夹。但现在我得到了这个:
Data\Migrations 文件夹是我希望进行迁移的地方。但是,如您所见,它们位于根目录下的 Migrations 文件夹中。
添加迁移命令的迁移文件夹由命令的相应输出目录参数决定(--output-dir
或 -o
for CLI dotnet ef migrations add
and -OutputDir
for PMC Add-Migration
)。正如这两个命令的文档中所解释的那样:
The directory use to output the files. Paths are relative to the target project directory. Defaults to "Migrations".
所以你必须提供那个参数,例如
Add-Migration SomeMigration -OutputDir Data\Migrations
请注意,这也会更改迁移 类 命名空间。
现在,文档中没有提到的很酷的事情是您只需执行一次,因为下一个添加迁移命令实际上默认为最后一个迁移文件夹。
话虽如此,最好是在您要添加的第一个迁移中指定此项。
如果您想使用问题中所示的已添加的迁移修改现有项目,则手动将整个根“迁移”文件夹移动到“数据”,然后可选择更改所有项目的命名空间.cs
文件(包括 .designer.cs
)到 namespace {RootNamespace}.Data.Migrations
,你就完成了。下一次迁移将添加到那里,无需指定文件夹。