【问题标题】:Cannot start ASP.NET Core RC2 web application in IISExpress无法在 IISExpress 中启动 ASP.NET Core RC2 Web 应用程序
【发布时间】:2016-05-19 16:51:50
【问题描述】:

我在 VS2015 中创建了一个新的“ASP.NET Core Web 应用程序(.NET Core)”项目。它构建没有任何问题,所以我想给它一个测试运行。但是,在启动时,它会因以下错误而窒息并崩溃:

Exception thrown: 'System.AggregateException' in Microsoft.AspNetCore.Server.Kestrel.dll
The program '[11608] dotnet.exe' has exited with code -1073741819 (0xc0000005) 'Access violation'.
The program '[15048] iisexpress.exe' has exited with code 0 (0x0).

我没有看到任何其他记录。我尝试调试它,我发现它是在Program 类中的WebHostBuilder.Run() 方法期间损坏的。它是框架的一部分,所以我无法更进一步。

请注意,通过dotnet run 命令运行时程序运行良好。只有 IISExpress 不起作用。

我应该如何调试这个问题?

project.json 文件如下。 (它是由 Visual Studio 生成的,我没有更改任何内容。)

{
  "dependencies": {
    "Microsoft.NETCore.App": {
      "version": "1.0.0-rc2-3002702",
      "type": "platform"
    },
    "Microsoft.AspNetCore.Diagnostics": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Mvc": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Razor.Tools": {
      "version": "1.0.0-preview1-final",
      "type": "build"
    },
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.StaticFiles": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration.Json": "1.0.0-rc2-final",
    "Microsoft.Extensions.Logging": "1.0.0-rc2-final",
    "Microsoft.Extensions.Logging.Console": "1.0.0-rc2-final",
    "Microsoft.Extensions.Logging.Debug": "1.0.0-rc2-final",
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-rc2-final"
  },

  "tools": {
    "Microsoft.AspNetCore.Razor.Tools": {
      "version": "1.0.0-preview1-final",
      "imports": "portable-net45+win8+dnxcore50"
    },
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": {
      "version": "1.0.0-preview1-final",
      "imports": "portable-net45+win8+dnxcore50"
    }
  },

  "frameworks": {
    "netcoreapp1.0": {
      "imports": [
        "dotnet5.6",
        "dnxcore50",
        "portable-net45+win8"
      ]
    }
  },

  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true
  },

  "runtimeOptions": {
    "gcServer": true
  },

  "publishOptions": {
    "include": [
      "wwwroot",
      "Views",
      "appsettings.json",
      "web.config"
    ]
  },

  "scripts": {
    "prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ],
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
  }
}

更新:我为 Core RTM 版本创建了一个新项目,这次成功了。

【问题讨论】:

  • 您查看过文档中的common errors area 吗?
  • 我有同样的问题...删除 project.lock.json 并不能解决我的问题...在 VS 中根本没有用于 asp.net core rc2 的调试...没有好的。
  • 从头开始...我没有 host.UseIISIntegration()。将其与删除 project.lock.json 结合起来,它就开始工作了。

标签: asp.net-core asp.net-core-mvc


【解决方案1】:

另一个问题是您可能正在运行旧版本的框架。尝试转到可运行项目的根 (project.json) 位置并输入 Command Prompt 类型:

dotnet run

【讨论】:

  • 我有这个并更改了人们遇到问题的所有文件(我发现了很多参考资料)。最后,尽管如此愚蠢,当我将所有参考升级为使用 1.1.0 时,我并没有在我的开发机器上安装实际的运行时 1.1.0。谢谢!
【解决方案2】:

我和你有同样的问题。对我来说,解决方案是关闭 VS2015,删除文件project.lock.json,然后再次重新启动 VS。 (project.lock.json会自动生成)

调试器似乎无法附加到应用程序。在我的例子中,我在函数public Startup(IHostingEnvironment env) 的第一行添加了一个throw new Exception("...");,然后应用程序就死掉了,并且没有像预期的那样在未处理的异常上中断。

project.lock.json 重建后,调试器再次正常工作。

【讨论】:

  • 删除 project.lock.json 对我也有帮助。
【解决方案3】:

我更新到了 dotnet core 的 RTM 版本,并使用新版本创建了一个新项目。我想这一定是一个错误。

【讨论】:

    【解决方案4】:

    对于那些遇到这种情况的人,我的行为和错误消息与问题中描述的完全相同。

    显然有些术语不能单独用作项目名称,例如webapp。 (我修复了它,将我的项目重命名为WebApp

    它已经是logged as a bug,并且该修复将包含在即将发布的版本中。

    不幸的是,在第一次运行失败后,重命名项目并不足以使其正常工作,因为 IIS Express 配置文件保留了旧条目。 只需编辑位于[PROJECT_ROOT]\.vs\config\applicationhost.config 文件并删除名为webappsite 元素,然后重新启动VS 并运行它。

    希望对你有帮助!

    【讨论】:

      【解决方案5】:

      我在运行我的项目时遇到了同样的错误(不使用 IIS)。 经过一番调查,我发现 appsettings.json 中的服务器 url(在配置中使用)已经很忙。我更改了网址,效果很好。 希望它可以帮助别人!

      【讨论】:

        【解决方案6】:

        我有同样的错误。找到的解决方案是我的 x64 应用程序设置为 x86

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-05-15
          • 1970-01-01
          • 2018-08-01
          • 1970-01-01
          • 2016-09-17
          • 2020-01-31
          • 1970-01-01
          • 2018-04-11
          相关资源
          最近更新 更多