使用远程连接字符串在 Azure 上执行代码优先迁移

Execute Code First Migrations on Azure with Remote Connection String

我正在发布一个 Azure Web 应用程序,我 运行 遇到执行代码优先迁移的奇怪问题。

如果我不检查 "Execute Code First Migrations",此数据库的远程连接字符串工作正常。

但是,如果我选中该框,一个带有奇怪拼写错误的奇怪连接字符串 "ConnetionString" 会被注入远程 web.config:

<add name="DbContext_DatabasePublish" connectionString="DbContext_DatabasePublish.ConnetionString" providerName="System.Data.SqlClient" />

这当然不是有效的连接字符串,EF 初始化程序会抛出此异常

Format of the initialization string does not conform to specification starting at index 0

无论本地连接字符串是否引用 localdb,或者连接字符串根本未在本地 web.config 中定义,发布行为也是相同的。

我是否漏掉了一些明显的东西?

在 Azure 中,我最终不得不为 DbContextDbContext_DatabasePublish 定义连接字符串,以便执行迁移。这 MSDN post and this answer 最终让我得出了这个结论。

我不确定为什么没有看到更多关于此问题的参考。这似乎是一个普遍的问题。