【问题标题】:Azure error - connection string difficultiesAzure 错误 - 连接字符串困难
【发布时间】:2018-03-09 00:48:08
【问题描述】:

我正在使用 vs 2015 中的 mvc5 应用程序。 每当我尝试访问数据库中的项目时都会出错

用户“{your_username}”登录失败。

当我访问 azure 门户时,“允许访问 azure 服务”设置已打开,并列出了我的客户端 IP 地址。 我认为我的连接字符串配置不正确。我不知道如何在我的本地机器上使用 azure 正确配置它。

我已将我的网络配置中的连接字符串保留到我以前工作的本地服务器:

在我的 web.config 中

<add name="IdentityDbContext" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=C:\Users\UserName\EduSmart_db.Mdf;          Initial Catalog=EduSmart_db;Integrated Security=True" providerName="System.Data.SqlClient" />

在 Azure 门户连接字符串中

Server=tcp:xxxx.database.windows.net,1433;Initial Catalog=Edu;Persist Security Info=False;User ID=Name;Password=Password;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;
  • 如何判断 azure 使用的是哪个连接字符串?
  • 有没有我没有考虑过的其他问题?

【问题讨论】:

    标签: azure azure-sql-database connection-string


    【解决方案1】:

    如何判断 azure 使用的是哪个连接字符串?

    Azure 使用第二个连接字符串。第一个(localdb)刚刚在您的本地机器中使用。服务器无法获取。您可以在 Context 类中添加 Azure Sql 连接字符串名称来指定它。

    有没有我没有考虑过的其他问题?

    您可以通过以下方式检查:

    1.Azure Sql Database中的防火墙设置。哟可以定义一个 ip地址范围(如×.×.×.0到×.×.×.255)而不是只有一个ip 地址。

    2.您可以在 web.configs 文件中检查 Azure sql 连接字符串,例如 这个。对我来说效果很好。

     <connectionStrings>
            <add name="ConnectionStringName" providerName="System.Data.SqlClient" connectionString="Data Source=tcp:[databasename].database.windows.net,1433;Initial Catalog=[databasename];Integrated Security=False;User Id=[username];Password=[password];Encrypt=True;TrustServerCertificate=False;MultipleActiveResultSets=True" />   
       </connectionStrings>

    如果您使用 Code First for Azure Sql,您可以在 Context 类中添加相关的连接字符串名称:

     public ApplicationDbContext(): base("ConnectionStringName")
     {
     }
    

    3.您可以点击工具>连接到数据库>Microsoft SQL 服务器>输入您关于 Azure 的服务器名称、用户名和密码 Sql。然后点击测试连接按钮,检查是否可以连接成功。

    此外,您可以参考此article 以了解如何在本地访问项目中的 Azure Sql。

    【讨论】:

    • 我意识到,即使客户端 IP 地址在下面列出了允许 azure 访问,我也没有添加允许它访问的规则。
    【解决方案2】:

    您只需按照here 的说明将您的 Web 应用程序和数据库发布到 Azure。

    要发布您的 Web 应用程序,请右键单击项目并选择发布。在创建站点页面上,提供现有的 SQL Azure 服务器、数据库和登录凭据。

    发布时会提供两个数据库连接,其中一个是 DBContext。当您使用向导发布网站时,数据表不会发布。

    由于您已经在 SQL Azure 上配置了防火墙设置,因此要发布数据库,请转到数据库项目。右键单击项目并选择发布。在“发布数据库”对话框中,单击“编辑并更新有关 Azure 上的数据库的信息”。保存配置文件并发布数据库。

    【讨论】:

      猜你喜欢
      • 2018-10-22
      • 1970-01-01
      • 1970-01-01
      • 2011-08-17
      • 2013-02-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多