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