ASP.NET MVC 5 服务不可用

ASP.NET MVC 5 Service Unavailable

过去一年半我一直在研究 VS2015 解决方案,直到突然间我无法再调试我的 ASP.NET MVC 5 应用程序。当我按 F5 键时,应用程序在浏览器中打开一个新选项卡并且只呈现以下内容:

The service is unavailable.

在事件日志中,我看到了这个:

Event code: 1002 
Event message: Application is shutting down. Reason: Initialization error. 
Event time: 19/09/2016 7:08:40 
Event time (UTC): 19/09/2016 12:08:40 
Event ID: 441a1c0336a84c5ba5660270208e832e 
Event sequence: 3 
Event occurrence: 1 
Event detail code: 50014 

Application information: 
Application domain: /LM/W3SVC/2/ROOT-1-131187604982350160 
Trust level: Full 
Application Virtual Path: / 
Application Path: *ommitted*
Machine name: *ommitted*

Process information: 
Process ID: 1892 
Process name: iisexpress.exe 
Account name: *ommitted* 

Custom event details: 

我使用 IIS Express 10 进行开发。在此过程中,跟踪日志文件中仅出现 1 个警告:

ModuleName: AspNetInitializationExceptionModule 
Notification: BEGIN_REQUEST 
HttpStatus: 503 
HttpReason: Service Unavailable 
HttpSubStatus:0 
ErrorCode: De bewerking is voltooid.  (0x0)

VS 2015 应用程序配置文件站点的配置:

<site name="MyApp" id="2">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
       <virtualDirectory path="/" physicalPath="D:\Source\MyApp" />
    </application>
    <bindings>
      <binding protocol="http" bindingInformation="*:52543:localhost" />
    </bindings>
</site>

我也按照建议查看了 URL 保留 here 但是没有任何包含端口 52543 的 url。我尝试完全更改端口但结果是一样的,所以我不要认为这是问题所在。

我不记得做过什么不同的事情。我创建了一个新的 ASP.NET 核心项目,但这不应该是根本原因。我的其他项目好像没有出现这个问题,所以只有这个解决方案。

最后,调试过程开始顺利,因为它命中了 MVC 应用程序的构造函数(HttpApplication 的子 class),但是一旦构造函数完成,此后就什么也没有发生了。

有什么建议吗?

ASP.NET MVC 5 项目中有很多东西会给您的代码带来麻烦。

  1. 删除 .vs 文件夹。在我的例子中,我从其他人那里得到了代码,并将它的路径设置为她的机器,所以在我删除它之前它不会工作。

  2. 从文档文件夹中删除 "IISExpress" 文件夹。可能是配置文件有问题。

显然这个问题只是暂时的,我无法确定到底发生了什么。我唯一让它工作的事情就是将这个条目添加到配置中:

 <binding protocol="http" bindingInformation="*:52543:myipaddress" />

在我运行解决了一次之后,IIS Express好像突然想起了如何做它的工作,让上面的条目变得多余。