我将所有 ef 代码首先迁移到一个名为Migrations
从包管理器控制台中,我输入Add-Migration xyz
了一个迁移的脚手架
是否可以从 Visual Studio 外部执行此操作?我正在使用 rake 脚本为我的构建进行大量自动化,但这是我还没有完全掌握的部分。这里的目标是执行以下操作
rake db:add_migration "xyz"
这将运行一些命令并将迁移添加到指定的项目。这是我唯一无法弄清楚如何自动化的地方!我可能会构建其他任务,例如删除和创建数据库以及将迁移导出到脚本,以便它可以在我的回旋迁移下运行。
相关资料
Add-Migration [-Name] <String> [-Force]
[-ProjectName <String>] [-StartUpProjectName <String>]
[-ConfigurationTypeName <String>] [-ConnectionStringName <String>]
[-IgnoreChanges] [<CommonParameters>]
我可以看到 EF 已从 nuget 安装到 packages 文件夹
packages\EntityFramework.5.0.0\tools
我可以在文件中看到EntityFramework.psm1
function Add-Migration
{
[CmdletBinding(DefaultParameterSetName = 'ConnectionStringName')]
param (
[parameter(Position = 0,
....
}
但我不确定如何从命令行执行它。我试过了
..\packages\EntityFramework.5.0.0\tools>powershell EntityFramework.psm1 Add-Migration
但这会导致错误
The term 'EntityFramework.psm1' is not recognized as the name of a cmdlet,
function, script file, or operable program. Check the spelling of the name,
or if a path was included, verify that the path is correct and try again.
At line:1 char:21
+ EntityFramework.psm1 <<<< Add-Migration
+ CategoryInfo : ObjectNotFound: (EntityFramework.psm1:String) [],
CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException