【问题标题】:application works locally but not on azure应用程序在本地工作,但不能在 azure 上工作
【发布时间】:2019-09-12 09:14:20
【问题描述】:

我创建了一个应用程序,它在我的系统上运行良好,但是当我将它部署在 azure app 服务上时。它不起作用。它显示了这样的错误。 启动应用程序时出错。

.NET Core 4.6.27817.03 X86 v4.0.0.0 | Microsoft.AspNetCore.Hosting 版本 2.2.0-rtm-35687 |微软视窗 10.0.14393 |需要帮助吗?

我已尝试检查 azure app 服务平台,但没问题。 我还尝试检查 Visual Studio 上的发布设置。

在发布设置中的“实体框架迁移”下拉菜单下,我看到此错误:

无法执行,因为找不到指定的命令或文件。

可能的原因包括:

您拼错了内置的 dotnet 命令。

您打算执行 NET Core 程序,但 dotnet-ef 不存在。

您打算运行一个全局工具,但在 PATH 上找不到具有此名称的带 dotnet 前缀的可执行文件。

我也检查了一切,看起来很好。 我试图创建一个全新的 .net core 2.2 项目并尝试部署它,但这也显示了同样的问题。

我希望它部署在 azure 上并处于工作状态。

谁有能力,请帮忙。

【问题讨论】:

  • 如果您遇到 EF 错误:是否存在试图更新数据库的数据库上下文?如果有....数据库在那里并且可用吗?数据库的连接字符串设置是否正确?我们需要更多关于您的应用程序的信息,以及它是如何设置的以便能够提供帮助。请提供minimal reproducible example
  • 同意@rickvdbosch。上面给出的问题很难解决。

标签: asp.net-mvc visual-studio azure asp.net-core .net-core


【解决方案1】:

请查看以下关于 dot net core 2.2 问题的疑难解答

ASP.NET Core 2.2 App Service hosted on Azure returning 500 without an exception being thrown

这将为您提供错误的实际原因,您可以使用它来解决。

此外,您可以在 Program.cs 中启用DetailedErrorsKey,以便弄清楚发生了什么。

启动相关异常,可以查看this链接。

数据库错误页面**middleware** 捕获与数据库相关的异常,这些异常可以通过使用实体框架迁移来解决。当这些异常发生时,会生成一个 HTML 响应,其中包含解决问题的可能操作的详细信息。此页面应仅在开发环境中启用。通过向 Startup.Configure 添加代码来启用页面:

https://docs.microsoft.com/en-us/aspnet/core/fundamentals/error-handling?view=aspnetcore-2.2#database-error-page

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 2021-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-05
    • 1970-01-01
    • 2021-06-03
    • 1970-01-01
    相关资源
    最近更新 更多