使用/ ConnectionString实体框架4.3.1 migrate.exe会引发错误

时间:2012-07-20 20:10:38

标签: entity-framework ef-migrations

我有两个项目需要在构建脚本中使用EF 4.3.1 migrate.exe工具。指向转换后的web.config会很痛苦,它部署在与我的构建服务器不同的服务器上,因此我想将连接字符串作为标志传递。

我已经尝试了我能想到的每个变体(不同的计算机,SQL Server 2008,只是命令行,而不是.bat,以管理员身份运行等),但我总是得到错误: 错误:调用目标引发了异常。

以下是我在本地计算机上尝试过的.bat文件示例:

@rem run_db_migrations.cmd
SET StartUpDirectory=%CD%\MyProject.MVC\bin 
SET ConnectionString=Data Source=.\SQLEXPRESS;Initial Catalog=MyProject;Integrated Security=True
SET ConnectionStringProvider=System.Data.SqlClient
SET MigrateExe=.\packages\EntityFramework.4.3.1\tools\migrate.exe

%MigrateExe% MyProject.MVC.dll /StartUpDirectory:"%StartUpDirectory%" /ConnectionString:"%ConnectionString%" /connectionProviderName:%ConnectionStringProvider%
pause

我看过其他类似的帖子,他们说这只是有效的,但奇怪的是他们的旗帜略有不同,所以我想知道是否有些事情发生了变化,或者是否有错误输入。

1 个答案:

答案 0 :(得分:1)

我在这里回答了一个类似的问题,关于如何通过参数覆盖connectionstring来迁移。但是,如果没有指定web / app.config文件,我还没有完成它。

https://stackoverflow.com/a/14138797/134761