.net – 没有Web/App.config的运行Entity Framework migrate.exe工具的正确格式是什么?

前端之家收集整理的这篇文章主要介绍了.net – 没有Web/App.config的运行Entity Framework migrate.exe工具的正确格式是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们最近切换到Entity Framework数据迁移,我正在为我们的MVC应用程序编写一些自动化脚本。如果我有一个Web.config指向,我可以使用4.3中的migrate.exe工具从我们的构建服务器成功运行迁移。命令看起来像:
ProjectName\packages\EntityFramework.4.3.1\tools\migrate.exe MyAssembly
    /startupdirectory:ProjectName\bin\Debug 
    /startupconfigurationfile:ProjectName\Web.config 
    /verbose

但是,由于各种原因,我希望避免使用Web.config,并在迁移时传递正确的连接字符串:

ProjectName\packages\EntityFramework.4.3.1\tools\migrate.exe MyAssembly
    /startupdirectory:ProjectName\bin\Debug 
    /connectionString:"Data Source=awesomeserver;Initial Catalog=awesomedatabase;User Id=funkyuser;Password=crazypassword" 
    /verbose

这不行。更糟糕的是,它使用NullReferenceException崩溃migrate.exe。连接字符串与我们在Web.config中使用的连接字符串相同。

以前有人遇到过吗?我的连接字符串格式错了吗?错误

解决方法

好的,我们搞定了在没有Web.config的情况下运行时,connectionProviderName参数也必须传入:
ProjectName\packages\EntityFramework.4.3.1\tools\migrate.exe MyAssembly
    /startupdirectory:ProjectName\bin\Debug 
    /connectionProviderName:"System.Data.sqlClient"
    /connectionString:"Data Source=awesomeserver;Initial Catalog=awesomedatabase;User Id=funkyuser;Password=crazypassword" 
    /verbose

我已经确认这是有效的。

猜你在找的HTML相关文章