WCF 无法激活服务,因为它不支持 ASP.NET 兼容性。已为此应用程序启用了 ASP.NET 兼容性

作者:jiankunking 出处:http://blog.csdn.net/jiankunking

错误信息:

无法激活服务,因为它不支持 ASP.NET 兼容性。已为此应用程序启用了 ASP.NET 兼容性。请在 web.config 中关闭 ASP.NET 兼容性模式,或将 AspNetCompatibilityRequirements 特性添加到服务类型且同时将 RequirementsMode 设置为“Allowed”或“Required”。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.InvalidOperationException: 无法激活服务,因为它不支持 ASP.NET 兼容性。已为此应用程序启用了 ASP.NET 兼容性。请在 web.config 中关闭 ASP.NET 兼容性模式,或将 AspNetCompatibilityRequirements 特性添加到服务类型且同时将 RequirementsMode 设置为“Allowed”或“Required”。

源错误: 

执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  

堆栈跟踪: 

[InvalidOperationException: 无法激活服务,因为它不支持 ASP.NET 兼容性。已为此应用程序启用了 ASP.NET 兼容性。请在 web.config 中关闭 ASP.NET 兼容性模式,或将 AspNetCompatibilityRequirements 特性添加到服务类型且同时将 RequirementsMode 设置为“Allowed”或“Required”。]
   System.ServiceModel.Activation.HostedAspNetEnvironment.ValidateCompatibilityRequirements(AspNetCompatibilityRequirementsMode compatibilityMode) +184808
   System.ServiceModel.Description.DispatcherBuilder.ValidateDescription(ServiceDescription description, ServiceHostBase serviceHost) +391
   System.ServiceModel.Description.DispatcherBuilder.InitializeServiceHost(ServiceDescription description, ServiceHostBase serviceHost) +306
   System.ServiceModel.ServiceHostBase.InitializeRuntime() +82
   System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout) +64
   System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) +789
   System.ServiceModel.HostingManager.ActivateService(String normalizedVirtualPath) +287
   System.ServiceModel.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath) +1132

[ServiceActivationException: 由于编译过程中出现异常,无法激活服务“/AMACTEST/RightManagementServer.svc”。异常消息为: 无法激活服务,因为它不支持 ASP.NET 兼容性。已为此应用程序启用了 ASP.NET 兼容性。请在 web.config 中关闭 ASP.NET 兼容性模式,或将 AspNetCompatibilityRequirements 特性添加到服务类型且同时将 RequirementsMode 设置为“Allowed”或“Required”。。]
   System.Runtime.AsyncResult.End(IAsyncResult result) +890624
   System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult result) +180062
   System.Web.CallHandlerExecutionStep.OnAsyncHandlerCompletion(IAsyncResult ar) +136

解决方案:

1、修改相应服务.svc.cs,在类上添加以下标识

using System.ServiceModel.Activation ;
[AspNetCompatibilityRequirements (RequirementsMode=AspNetCompatibilityRequirementsMode.Required)]

据说:启用了AJAX的WCF服务是默认添加的

请移步到小注中的链接,谢谢

小注:

更详细的问题分析参考:

The service cannot be activated because it does not support ASP.NET compatibility. ASP.NET compatibility is enabled for this application. Turn off ASP.NET compatibility mode in the web.config or add the AspNetCompatibilityRequirements attribute to the service type with RequirementsMode setting as 'Allowed' or 'Required'. 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.InvalidOperationException: The service cannot be activated because it does not support ASP.NET compatibility. ASP.NET compatibility is enabled for this application. Turn off ASP.NET compatibility mode in the web.config or add the AspNetCompatibilityRequirements attribute to the service type with RequirementsMode setting as 'Allowed' or 'Required'.

时间: 2024-09-19 02:29:34

WCF 无法激活服务,因为它不支持 ASP.NET 兼容性。已为此应用程序启用了 ASP.NET 兼容性的相关文章

IIS 服务或万维网发布服务,或者依赖这 服务可能在启动期间发生错误或者已禁用

具体错误信息如下: 解决方案: 在服务中禁用以下3个服务自动启动: Net.Msmq Listener Adapter:IIS相关的WCF MSMQ激活服务Net.Pipe Listener Adapter:IIS相关的WCF命名管道激活服务Net.Tcp Listener Adapter:IIS相关的WEF TCP激活服务 重启服务器,搞定! win 10版本该问题:点击打开链接

WCF调试异常信息:ServiceHost 仅支持类服务类型

"/CommonHelpServices"应用程序中的服务器错误. ServiceHost 仅支持类服务类型. 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息.  异常详细信息: System.ArgumentException: ServiceHost 仅支持类服务类型. 源错误:  执行当前 Web 请求期间生成了未经处理的异常.可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息. 堆栈跟踪

[WCF安全系列]服务凭证(Service Credential)与服务身份(Service Identity)

在采用TLS/SSL实现Transport安全的情况下,客户端对服务证书实施认证.但是在默认情况下,这种认证仅仅是确保服务证书的合法性(通过数字签名确保证书确实是由申明的CA颁发)和可信任性(证书或者CA证书存储于相应的可信赖存储区).而WCF提供服务证书并不限于此,客户端对服务认证的模式应该是这样的:服务端预先知道了服务的身份,在进行服务调用之前,服务端需要提供相应的凭证用以辅助客户端确认调用的服务具有预先确定的身份.对于这样的服务认证模式,具有两个重要的概念,即服务凭证和服务身份. 目录:

WCF身份验证服务

Windows Communication Foundation (WCF) 身份验证服务使你能够使用ASP.NET成员资格,从可以发送和使用SOAP消息的任何应用程序中对用户进行身份验证.这可以包括不使用.NET Framework的应用程序.因此,这些不同的应用程序的用户不需要对每个应用程序使用单独的凭据.用户在使用任意客户端应用程序时,均可通过提供相同的凭据登录到应用程序中.本节就使用WCF身份验证服务的几个关键点做实践性分析. 创建WCF身份验证服务 System.Web.Applica

利用WCF的Duplex服务向Winform程序推送消息

先看运行效果:在网页中发送消息[如图],利用WCF的Duplex服务向Winform 程序推送消息,Winform端接收到消息, 先建立两个项目,一个WebForm 项目和一个WinForm项目,并在项目下 建立好各自需要的文件 SendMessage.aspx 是发送消息的Web页面 ISendMessageService.cs 和 SendMessageService.svc用来实现WCF的 Duplex服务 GetMessageForm.cs 是接收消息的Winform窗口 当然, 还需要

WCF之双工服务

所谓WCF的双工服务,指的就是说,在WCF应用中,可能客户端和服务器端的 角色是可以互换的,例如服务器端一般可能仅仅提供操作服务,它并不需要主动 地联系客户端做什么操作. 但是,假如某些时候,我们需要服务端也能 够具备这样的特征,就是说他能够在某些时候主动地联系客户端,触发一个行为 . 这种场景,我们简单地归纳为"双工"场景.下面来看看 在WCF中如何实现这种双工的服务. 1. 创建一个用于回调的Contract. 它与标准的Contract没有任何区别 using System; u

windows2003下配置IIS服务,使其支持Server.CreateObject("WScript.Shell")

在windows2000下,IIS默认设置是可以web和可执行程序通信的.但是在2003下IIS关于这方面的服务是禁止的.我现在遇到的问题是,利用web和一个带参数的可执行程序连接.并运行这个带参赛的可执行程序.在windows2003下用asp中的Server.CreateObject("WScript.Shell") 运行没有出现错误,但是并没有执行.但是在windows2000下可以执行.呵呵,意识到那是IIS开的玩笑.在windows2003下如果支持Server.Create

您的 IBM 用户名使您能够访问服务、社区、支持和()等。

问题描述 您的IBM用户名使您能够访问服务.社区.支持和()等. 解决方案 解决方案二:您的IBM用户名使您能够访问服务.社区.支持和()等什么啊解决方案三:是在线采购吗?解决方案四:在线采购正解解决方案五:?啥意思,哥们!!!解决方案六:把问题拿去百度一下就能找到答案是在线采购了,另外孙建博的小站这里分享了所有的csdn积分任务答案,可以关注一下.还有,尼玛现在问题换成点击激活后出现的页面里小图标后的字母是IBM()答案到底是啥啊(╯°Д°)╯︵┻━┻解决方案七:真的很不错哦,好好学习下.解决

Office 2003 SP2 大企业版 下载 免激活,免序列号,支持在线更新_常用工具

此ISO整合SP2升级包,包括全部组件,免激活,免序列号,支持在线更新! 包含下列组件:Microsoft Office Word 2003Microsoft Office Excel 2003Microsoft Office PowerPoint 2003Microsoft Office FrontPage 2003Microsoft Office Access 2003Microsoft Office Outlook 2003Microsoft Office OneNote 2003Micr