我正在发布一个web应用程序到Azure。我在VS2013中使用Entity Framework 6.0进行开发。
我试图在WAWS中指定我的数据库连接字符串。Json文件,而不是在我的web。配置文件,以便我可以在部署时而不是构建时更改该值。(我正在通过Visual Studio Online的构建工作部署我的web应用程序。)
当我运行我的应用程序,我得到这个错误时,试图访问数据库;
System.ArgumentException: Keyword not supported: 'server'.
at System.Data.Entity.Core.EntityClient.Internal.DbConnectionOptions.ParseInternal
(EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
我现在意识到实体框架连接字符串比典型的连接字符串要复杂得多。VS2013在我的Web.config中为我生成了这个:
<add name="EventPusherConfigurationEntities" connectionString="metadata=res://*/EventPusherConfigurationModel.csdl|res://*/EventPusherConfigurationModel.ssdl|res://*/EventPusherConfigurationModel.msl;provider=System.Data.SqlClient;provider connection string="data source=XXXXXX;initial catalog=XXXXXX;user id=XXXXXX;password=XXXXXXX;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
我不知道如何在WAWS中指定等价物,或者是否可能。这是我有的,但它不起作用。它会得到上面描述的错误。
{
"connectionStringName": "EventPusherConfigurationEntities",
"serverName": "XXXXXXX",
"databaseName": "XXXXXXX",
"user": "XXXXXXX",
"password": "XXXXXXX",
"edition": "",
"size": "",
"collation": ""
}
是否有一种方法可以在WAWS文件中指定实体框架连接字符串,以便它可以工作?谢谢。
可以通过portal设置:
Ibiza版本(预览版)
https://azure.microsoft.com/en-us/documentation/articles/web-sites-configure/老门户https://azure.microsoft.com/blog/2013/07/17/windows-azure-web-sites-how-application-strings-and-connection-strings-work/