在Azure管理门户中连接SQL Azure EF数据库的连接字符串

9

我有一个运行在Azure上的网站,使用EF数据库优先模型。

如果我将连接字符串嵌入到web.config中并部署,一切都很顺利。

<add name="MyEntities" connectionString="metadata=res://*/App_Code.Model.csdl|res://*/App_Code.Model.ssdl|res://*/App_Code.Model.msl;provider=System.Data.SqlClient;provider connection string='Data Source=my.database.windows.net;Initial Catalog=myTest_DB;User ID=***;Password=***; MultipleActiveResultSets=False'"  providerName="System.Data.EntityClient"/>

但是,我不想在web.config中包含连接字符串,因为其中包含凭据。

所以我将它移动到Azure属性的连接字符串区域。

我遇到的第一个问题是获取元数据无效关键字错误。

我通过将类型从SQL数据库更改为Custom来解决了这个问题。

输入图片描述

但现在我收到以下错误:

应用程序配置文件中的连接字符串'MyEntities'未包含所需的providerName属性。

我已经搜索了Web并尝试了许多连接字符串的变化,但尚未找到正确的连接字符串。

注意:我猜我可以把它作为应用程序设置,并将字符串的初始化移动到代码中,但即使出于好奇心,我也想知道如何通过门户网站完成它。

1个回答

8
问题不在连接字符串,而是无法在门户中指定providerName。
尝试使用本地或虚拟的连接字符串进行发布,并像在Azure应用程序设置中一样覆盖它。请参阅此答案:https://dev59.com/qmMk5IYBdhLWcg3w0RCU#18964294

哈,太简单了!非常感谢。 - Kildareflare

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接