【问题标题】:Service Unhealthy: Code-First Migration on Azure Mobile Services (.NET backend)服务不健康:Azure 移动服务(.NET 后端)上的代码优先迁移
【发布时间】:2014-06-20 23:49:07
【问题描述】:

我被这个问题困扰了好几天。我正在尝试在 .NET 后端创建移动服务并将其发布到 Azure。

我已按照本教程 mobile-services-dotnet-backend-how-to-use-code-first-migrations 在移动服务项目上设置代码优先迁移。

当我在本地部署时它工作正常,但是当我发布到 Azure 时,它​​让我这个皱眉的服务不健康

我在日志中看到了这个错误

信息已将服务运行状况更改为“严重”(服务是 不良。请检查服务日志以确定问题和 如何纠正它。)从以前的状态“健康”(服务是 被认为处于健康状态。)。 App.HealthReporter 20/06/2014 06:00:03

错误引导绑定失败:执行“WebApiConfig.Register”导致 异常:'此版本的 SQL 不支持 Windows 登录 服务器。'。 App.Hosting 20/06/2014 06:00:03

这与此博客Code-First Migration problem with AMS 中的症状相符,但我无法应用他的解决方案。他提到他将控制权授予生成的用户

将 SCHEMA::[dbo] 控制权授予 [生成的用户登录]

但我不知道它在哪里应用,我从哪里获得生成的用户登录等。我使用的数据库将专用于那个移动服务项目,不会有来自任何其他项目的表。

更重要的是,有没有更好的方法呢?由于这个命名问题似乎太错误而无法解决,有没有更好的方法为 azure 移动服务 .net 后端项目设置数据库?

请帮忙

【问题讨论】:

    标签: asp.net azure azure-sql-database entity-framework-migrations azure-mobile-services


    【解决方案1】:

    问题似乎是您部署的服务正在使用的连接字符串——它似乎正在尝试使用 Windows 凭据登录,但这不适用于 SQL Azure。

    您使用的是 AMS 为您设置的数据库还是您自己设置的数据库?

    要查看部署的服务正在使用哪个连接字符串(包括用户等),您可以访问此站点并检查应用程序的应用程序设置和连接字符串:

    http://{yoursite}.scm.azure-mobile.net

    登录后在环境下检查并查找名为 MS_TableConnectionString 的连接字符串。在那里,您将找到 EF 尝试连接的用户和密码。

    希望这会有所帮助,

    亨里克

    【讨论】:

    • 你说得对,在连接字符串中我有 Integrated Security=True;,当我现在删除它时,我得到了一个不同的错误。我会调查并回复你
    • 非常感谢您在这方面的帮助。任何机会你都可以帮助我解决这个错误stackoverflow.com/questions/24354139/…
    • 应该和我写服务时指定的连接字符串名称不同吗? MS_TableConnectionString 没有出现在我的代码中的任何地方...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-24
    • 1970-01-01
    • 2014-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-28
    相关资源
    最近更新 更多