gpt4 book ai didi

.net - Web服务配置问题

转载 作者:行者123 更新时间:2023-12-03 17:19:57 26 4
gpt4 key购买 nike

我从应用程序目录托管 2 个 WCF Web 服务和 1 个标准 .NET Web 服务。 .NET 服务和 WCF 服务之一完美运行;但是,其他 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'.



两个 WCF Web 服务都有这条线
<AspNetCompatibilityRequirements(RequirementsMode:=AspNetCompatibilityRequirementsMode.Allowed)> _

并且 web.config 文件有
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />

当我改变时,增加更多的困惑
AspNetCompatibilityRequirementsMode.Allowed


AspNetCompatibilityRequirementsMode.Required

该服务工作得很好。

还有,变
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />


<serviceHostingEnvironment aspNetCompatibilityEnabled="false" />

在 web.config 中还允许所有 Web 服务运行。

这个问题出现在 IIS7 和运行 IIS6 的 SBS2003 上托管的暂存环境中。

在此先感谢您的帮助。
jack

更新:
我能够通过删除我的开发系统上的应用程序来让它工作;然而,即使在删除应用程序并在那里重新创建之后,问题仍然存在于我们的登台服务器上。

解决方法:
  • 从 IIS 中删除应用程序
  • 重新创建目录
  • 创建新的应用程序池
  • 在目录的属性中,创建应用程序并将其关联到新的应用程序池。

  • 多么痛苦。

    最佳答案

    您不能在单个应用程序池下托管 2 个不同框架版本的服务。我的意思是,如果您在单个应用程序池下托管了 2 个 WebService(一个使用 Framework 2.0,另一个使用 Framework 4.0),则任何一项服务都可以工作。第二永远行不通

    解决方案:

    创建 2 个不同的应用程序池。 App1(目标框架 2.0)和 App2(目标框架 4.0)

    将 App1 池分配给在 Framework 2.0 中开发的服务。

    将 App2 池分配给在 Framework 4.0 中开发的服务。

    重启 IIS

    它现在应该可以工作了。

    关于.net - Web服务配置问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5807147/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com