【问题标题】:Entity Framework throwing Error 26 after creating database and tables创建数据库和表后,实体框架抛出错误 26
【发布时间】:2016-02-26 11:51:29
【问题描述】:

我现在有一个能够按预期创建数据库和表的解决方案。在运行时,我可以登录(通过 vanilla IdentityDbContext),但是,当尝试访问不同 DbContext 中的表(使用相同的连接字符串)时,我收到以下异常:

“发生网络相关或特定于实例的错误,同时 建立与 SQL Server 的连接。找不到服务器或 无法访问。验证实例名称是否正确,并且 SQL Server 配置为允许远程连接。 (提供者:SQL 网络接口,错误:26 - 定位服务器/实例时出错 指定)”

这真的让我大吃一惊,因为应用程序能够连接以创建数据库和表,查询数据库以登录 - 但之后无法访问表。

这一切都可以在本地正常运行 - 当部署到 MS Azure 中托管的 ASP.NET 网站时,only 会出现错误。

允许在 Azure 中针对此特定部署启用 Windows Azure 服务。

是否有任何特定代码可以帮助缩小导致此问题的原因?

编辑:我相信这篇文章与 ataravati 发布的文章无关,因为我没有连接到附加的外部数据库,而是在本地和远程使用相同的数据库点 - 但仅在部署到Azure 我有什么问题吗?

【问题讨论】:

标签: sql-server asp.net-mvc azure entity-framework-6 azure-sql-database


【解决方案1】:

我认为你们之间的问题

DbContext 构造函数和您的连接字符串

您可以调试您的 DbContext,您会发现传递给您的基类的参数指向您的本地服务器连接字符串而不是 a

【讨论】:

  • 嗨Shaddad,你能详细说明你的答案吗?在本地调试我可以看到两个 DbContexts 的连接字符串相同 - 由于没有找到符号(即使在调试模式下),我无法调试 Azure 部署
【解决方案2】:

问题是由以下原因引起的:

[Authorize(Roles = "Admin")]

在 Web API 内部。解决这些角色的任何问题都无法连接到数据库。我暂时删除了所需的角色。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-24
    • 2012-08-16
    • 2015-03-23
    • 2011-09-28
    • 1970-01-01
    • 2012-07-07
    • 1970-01-01
    相关资源
    最近更新 更多