Azure门户中设置的连接字符串未被应用程序拾取

时间:2015-09-08 08:39:52

标签: azure azure-web-sites membershipreboot

我有一个部署到Azure Web App的webapp。在webapp中,我正在使用MembershipReboot和Entity Framework。 Sql Server数据库也在Azure中。

它通过BitBucket集成和持续部署在临时插槽中进行部署。

作为构建过程的一部分,web.config transfrom将连接字符串值更改为" dummy"。

我在Azure门户中设置了名为MembershipReboot的连接字符串。

当我浏览应用程序时,出现此错误:

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

如果我将web.config中的连接字符串更改为Sql Azure连接字符串,则应用程序可以正常加载。如果我把它设置回" dummy"然后我得到了上述错误。

这向我表明,Azure门户中设置的连接字符串未被应用程序接收。

我使用ARM模板部署创建了这个Azure环境,并与一些Azure powershell命令混合使用。我也尝试过手工创建环境,同样的问题。

关于下一步要看什么的任何想法?

编辑:只是说,在Kudu中可以看到正确的连接字符串。

1 个答案:

答案 0 :(得分:0)

管理解决此问题。

这是由于在环境提供正确的连接字符串之前调用StructureMap并创建数据库上下文(通过global.asax)。

在我们的案例中,应用程序混合了Owin启动和global.asax Application_Start,我们不得不将global.asax启动移动到Owin启动,并且不允许在启动期间创建数据库上下文。我怀疑我们可以完成后者。