【问题标题】:ASP .NET 5 Empty Project returns 500 Internal Server ErrorASP .NET 5 空项目返回 500 内部服务器错误
【发布时间】:2015-12-17 02:32:45
【问题描述】:

我使用空的 ASP .NET 5 预览模板创建了一个新的 Web 应用程序。该项目在我运行dnu restore 后构建。

当我运行它时,我得到一个空响应(即空白页)。刷新页面,我得到一个“HTTP 错误 500.0 - 内部服务器错误”典型页面,没有有用的信息(见下面的屏幕截图)。

我正在使用项目模板中的标准样板代码:

public class Startup
{
    // For more information on how to configure your application, visit http://go.microsoft.com/fwlink/?LinkID=398940
    public void ConfigureServices(IServiceCollection services)
    {
    }

    public void Configure(IApplicationBuilder app)
    {
        app.Run(async (context) =>
        {
            await context.Response.WriteAsync("Hello World!");
        });
    }
}

我注意到如果我设置断点,它会告诉我断点不会被命中。

我做错了什么,我怎样才能让这个最简单的场景发挥作用?

编辑:project.json是项目模板自带的默认(使用beta 5,我知道不是最新的):

{
  "webroot": "wwwroot",
  "version": "1.0.0-*",

  "dependencies": {
    "Microsoft.AspNet.Server.IIS": "1.0.0-beta5",
    "Microsoft.AspNet.Server.WebListener": "1.0.0-beta5"
  },

  "commands": {
    "web": "Microsoft.AspNet.Hosting --config hosting.ini"
  },

  "frameworks": {
    "dnx451": { },
    "dnxcore50": { }
  },

  "publishExclude": [
    "node_modules",
    "bower_components",
    "**.xproj",
    "**.user",
    "**.vspscc"
  ],
  "exclude": [
    "wwwroot",
    "node_modules",
    "bower_components"
  ]
}

【问题讨论】:

  • 可以分享一下project.json文件吗?另外,告诉我们您使用的是什么版本的 dnx
  • 您在使用 Visual Studio 吗?命令提示符?您使用的是哪个运行时(例如dnx-clr-win-x64.1.0.0-rc1-final)?你能提供你的project.json 依赖项吗?
  • 编辑了问题。从 VS2015 运行(对不起,认为这很清楚)。选定的运行时似乎是 1.0.0-rc1-update1。也许这就是问题所在。
  • 不,抱歉。切换到 1.0.0-beta5 后问题仍然存在。

标签: asp.net-core


【解决方案1】:

为了完成这项工作,我必须经历的事情真是太疯狂了。总结:

  • 转到%userprofile%,删除 .dnx\packages 中的所有内容(只是为了确保不同的 beta 运行时版本之间没有冲突)
  • 确保正在使用最新的运行时
  • dnu restore
  • 按照this answer替换project.json中的依赖项
  • 根据该答案下方的评论,将"Microsoft.AspNet.Hosting --config hosting.ini" 替换为"Microsoft.AspNet.Server.Kestrel"
  • 在 Startup.cs 中,将 using Microsoft.Framework.DependencyInjection; 替换为 using Microsoft.Extensions.DependencyInjection;
  • 使用命令行调用 dnx web 运行项目,而不是从 Visual Studio 运行项目

故事的寓意:Visual Studio 附带的“预览模板”已经过时了,最好开始一个新项目。

注意:在撰写本文时,最新的运行时是1.0.0-rc1-update1

【讨论】:

    猜你喜欢
    • 2021-03-25
    • 1970-01-01
    • 2015-03-09
    • 1970-01-01
    • 1970-01-01
    • 2021-11-12
    • 2013-07-24
    • 1970-01-01
    • 2018-01-05
    相关资源
    最近更新 更多