Asp.net IIS:分析器错误消息:无法创建类型

Asp.net IIS:分析器错误消息:无法创建类型,asp.net,web-services,iis,Asp.net,Web Services,Iis,我正在尝试用C#构建一个简单的web服务,使用VS2015托管在Windows Server 2012R2上 我已经编写了代码,并且在VisualStudio调试器中托管时可以正常工作。调试器将启动IE,并提供UI来测试代码中的简单方法。我可以输入一个摄氏度的温度,然后返回法伦塞特的温度。所以我的理解是我的代码本身正在工作 但是,当我发布项目并尝试在IE中加载时,我得到: Server Error in '/' Application. Parser Error Description:

我正在尝试用C#构建一个简单的web服务,使用VS2015托管在Windows Server 2012R2上

我已经编写了代码,并且在VisualStudio调试器中托管时可以正常工作。调试器将启动IE,并提供UI来测试代码中的简单方法。我可以输入一个摄氏度的温度,然后返回法伦塞特的温度。所以我的理解是我的代码本身正在工作

但是,当我发布项目并尝试在IE中加载时,我得到:

Server Error in '/' Application.

Parser Error 
  Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately. 

 Parser Error Message: Could not create type 'TestAutomation.AutomationInterface'.

Source Error: 



Line 1:  <%@ WebService Language="C#" CodeBehind="~/App_Code/WebService.cs" Class="TestAutomation.AutomationInterface" %>



 Source File:  /TestToolsAutomation/AutomationInterface.asmx    Line:  1 


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.6.81.0 
我在这里看到的一个明显的问题是,没有用我编译的代码创建.dll文件。我远非IIS专家,但这不是应该在用户第一次请求页面时创建的吗

然后,我重新发布并选中文件选项中的“发布期间预编译”。执行此操作时,将创建一个\bin文件夹,其中包含“App_Code.compiled”和“App_Code.dll”文件。但是,我在浏览器中遇到了相同的错误

因为我的代码在VS调试器中工作,但在IIS中托管时不工作,所以我怀疑问题出在IIS方面,但我不能100%肯定这一点

当我在IE中请求IIS页面时,我在应用程序事件日志中得到一个源代码为“ASP.NET 4.0.3.30319.0”的事件1310,该日志中显示“事件代码:3006 事件消息:发生“解析器错误”以及显示一组System.Web.Compilation函数的堆栈跟踪

我已经在Stack Overflow和其他站点上搜索了这个错误,但是没有一个建议的解决方案能够解决我的特定问题

如果社区能提供任何帮助,我将不胜感激

更新:我在服务器上启用了失败的请求跟踪。错误似乎发生在以下位置:

154. view trace 
Warning 
-MODULE_SET_RESPONSE_ERROR_STATUS 


ModuleName
ManagedPipelineHandler 

Notification
MAP_REQUEST_HANDLER 

HttpStatus
500 

HttpReason
Internal Server Error 

HttpSubStatus
0 

ErrorCode
The operation completed successfully.
 (0x0) 

ConfigExceptionInfo

 ManagedPipelineHandler 

我缺乏充分理解IIS试图告诉我什么的背景知识。如果您有任何建议,我们将不胜感激。

以下是一些可以探索的想法:

您是否查看了IIS中的应用程序池用于运行此应用程序的帐户的权限?可能存在未生成的ASP.Net临时文件,这可能是一个问题

ASP.Net是否已向IIS注册?我记得有好几次必须在服务器上运行“aspnet_regiis-I”才能安装ASP.Net部件,这样它才能出现在IIS中

IIS是否配置为允许ASP.Net请求?在机器级别的IIS管理器中,需要注意“ISAPI和CGI限制”



更新:也许您可以查看应用程序池的配置,看看它使用的是哪个.Net版本,以及它是集成模式还是经典模式。这些将是需要检查的下一个层次。

以下是一些可能的想法:

您是否查看了IIS中的应用程序池用于运行此应用程序的帐户的权限?可能存在未生成的ASP.Net临时文件,这可能是一个问题

ASP.Net是否已向IIS注册?我记得有好几次必须在服务器上运行“aspnet_regiis-I”才能安装ASP.Net部件,这样它才能出现在IIS中

IIS是否配置为允许ASP.Net请求?在机器级别的IIS管理器中,需要注意“ISAPI和CGI限制”



更新:也许您可以查看应用程序池的配置,看看它使用的是哪个.Net版本,以及它是集成模式还是经典模式。这些将是需要检查的下一个层次。

以下是一些可能的想法:

您是否查看了IIS中的应用程序池用于运行此应用程序的帐户的权限?可能存在未生成的ASP.Net临时文件,这可能是一个问题

ASP.Net是否已向IIS注册?我记得有好几次必须在服务器上运行“aspnet_regiis-I”才能安装ASP.Net部件,这样它才能出现在IIS中

IIS是否配置为允许ASP.Net请求?在机器级别的IIS管理器中,需要注意“ISAPI和CGI限制”



更新:也许您可以查看应用程序池的配置,看看它使用的是哪个.Net版本,以及它是集成模式还是经典模式。这些将是需要检查的下一个层次。

以下是一些可能的想法:

您是否查看了IIS中的应用程序池用于运行此应用程序的帐户的权限?可能存在未生成的ASP.Net临时文件,这可能是一个问题

ASP.Net是否已向IIS注册?我记得有好几次必须在服务器上运行“aspnet_regiis-I”才能安装ASP.Net部件,这样它才能出现在IIS中

IIS是否配置为允许ASP.Net请求?在机器级别的IIS管理器中,需要注意“ISAPI和CGI限制”



更新:也许您可以查看应用程序池的配置,看看它使用的是哪个.Net版本,以及它是集成模式还是经典模式。这些将是需要检查的下一个层次。

经过数小时的努力,进行了各种设置更改,并多次卸载和重新安装IIS,我终于解决了这个问题


我必须右键单击我在IIS管理器中发布文件的文件夹,然后选择“转换为应用程序”。它现在可以工作了

经过数小时的努力,进行了各种设置更改,并多次卸载和重新安装IIS,我终于解决了这个问题


我必须右键单击我在IIS管理器中发布文件的文件夹,然后选择“转换为应用程序”。它现在可以工作了

经过数小时的努力,进行了各种设置更改,并多次卸载和重新安装IIS,我终于解决了这个问题

我必须右键单击我在IIS管理器中发布文件的文件夹,然后选择“转换为应用程序”。现在可以工作了
154. view trace 
Warning 
-MODULE_SET_RESPONSE_ERROR_STATUS 


ModuleName
ManagedPipelineHandler 

Notification
MAP_REQUEST_HANDLER 

HttpStatus
500 

HttpReason
Internal Server Error 

HttpSubStatus
0 

ErrorCode
The operation completed successfully.
 (0x0) 

ConfigExceptionInfo

 ManagedPipelineHandler