WebService服务需要通过注册路由进行转发到自身的asmx页面问题

news/2025/2/23 6:00:31/文章来源:https://www.cnblogs.com/xiaoyongui/p/18726287

背景要求
三方接口自定义了url路径,但是原先代码是通过webservice进行开发的asmx页面。
前面已经有人写好了代码,但是本地部署死活无法通过注册的路由调用!
`protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);

    }/// <summary>/// 路由注册 页面使用WebFormRouteHandler,服务用WebServiceRouteHandler/// </summary>/// <param name="routes"></param>public static void RegisterRoutes(RouteCollection routes){routes.Add("XXXX1", new Route("service", new WebServiceRouteHandler("AppointmentRegisterWebService_XXX1.asmx")));routes.Add("XXX", new Route("doReqToHis", new WebFormRouteHandler("~/AppointmentRegisterWebAPI_XXXXX.ashx")));routes.Add("XXXXXX", new Route("yhhis/service/getway", new WebServiceRouteHandler("~/XXXXXAppService.asmx")));}protected void Application_Error(object sender, EventArgs e){Exception ex = Server.GetLastError().GetBaseException();// 如果是 HttpException 类型的异常,并且状态码为 404 或 500,就将异常记录到日志中if (ex is HttpException && (ex as HttpException).GetHttpCode() == 404 || (ex as HttpException).GetHttpCode() == 500){// 记录异常信息到日志中LogFile log = new LogFile("Global");log.WriteLog(ex.Message + "-" + ex.StackTrace);}}`

历经一天多的研究,也询问了一些有经验的人都没有解决。
最终连到一家部署好了的医院进行测试才发现是需要如下设置:

  1. 由于配置文件里面如下设置了:
    <system.webServer> <validation validateIntegratedModeConfiguration="false" /> <modules> <remove name="ScriptModule" /> <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> </modules> <handlers accessPolicy="Read, Execute, Script"> <remove name="WebServiceHandlerFactory-Integrated" /> <remove name="ScriptHandlerFactory" /> <remove name="ScriptHandlerFactoryAppServices" /> <remove name="ScriptResource" /> <add name="all" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv2.0,bitness64" /> <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> <add name="ScriptResource" path="ScriptResource.axd" verb="GET,HEAD,POST,DEBUG" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode" /> </handlers> <directoryBrowse enabled="false" /> </system.webServer>
    web.config里面的配置
    因此需要设置下IIS服务里面的应用池为如下图所示:
    IIS服务里面应用池
  2. Web.config里面下面需要配置一下:
    <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    访问图片
    记录下避免下次还会出现这样的情况能够有方向查找原因。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/887099.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql 页存储分布

前言 前文我们已经明白了行数据,如何在页存储中分布的行是怎么存储的。 正文 那么页结构又是怎么样的呢?这里我们唯一知道的就是user records 就是实际存储的行记录内容。这里让我觉得有意思的是infimum 和 suprenum,分别是最小记录和最大记录,这两个是用来做什么呢? 我估…

惠州某全球知名玩具工厂牵手珠海盈致 1个月时间快速迈向精益生产

在竞争激烈的市场环境下,惠州某全球知名玩具工厂为求发展,对仿真火车模型车间进行升级改造,致力于打造更高效、更优质的生产环境。该工厂顺应市场趋势牵手珠海盈致STC-X柔性智能线+MES系统,让该车间仅用1个月正式投产,实现精益生产,实现生产过程的透明化和精细化管理。改…

记一次若依分页total总数返回错误问题解决方案

如上图,在使用若依框架分页时,我对返回的list进行了单独处理,然后发现返回的total字段为10,也就是只返回了当前页的总数。 解决方案是修改genDataTable方法,把流处理过的list带到genDataTable方法中,在setTotal设置oldlist(未进流处理的list总数)原因是在经过处理后的lis…

sql统计最大连续增加条数

趋势特征是业务人员比较青睐的特征,其中涉及到连续变化期数,例如连续增大、减少期数等。这里写一下可以实现的思路。 1.使用变量 这个方法在我常用的sql平台中只有mysql支持。pgsql和hive无法实现。 在查询里声明select @var:=0,通过逻辑语句将起始位置置1,连续行处递增,和…

安川机器人维修SGMAV-A5ANA-YR13伺服电机

在工业自动化领域,安川机器人扮演着至关重要的角色。而其中的SGMAV - A5ANA - YR13伺服电机一旦出现故障,将会影响整个安川机器人的正常运作。 安川机器人SGMAV - A5ANA - YR13伺服电机常见故障一、电气故障线路连接问题在维修中,常常会发现线路松动或者短路的情况。这可能是…

Azure AI Foundry实验室

微软Azure AI Foundry实验室(https://ai.azure.com/labs)旨在通过实验性技术,加速AI创新应用,推动从概念探索到实际解决方案的转化。其聚焦领域包括游戏开发、极端天气预测、药物发现、材料科学、自动化交互等,并强调社区协作以促进技术落地。原文核心实验项目与技术1.Muse定…

ABB机器人维修DSQC1000主机故障

在工业生产领域,ABB机器人发挥着至关重要的作用。然而,像DSQC1000主机这样的关键部件也可能会出现故障,需要进行维修。 一、ABB机器人DSQC1000主机故障的常见表现(1)通讯故障在ABB机器人系统中,DSQC1000主机如果出现通讯故障,可能导致机器人无法接收正确的指令。这时候,…

Svelte 最新中文文档教程(14)—— 特殊元素

前言 Svelte,一个非常“有趣”、用起来“很爽”,面向未来的前端框架。从 Svelte 诞生之初,就备受开发者的喜爱,根据统计,从 2019 年到 2024 年,连续 6 年一直是开发者最感兴趣的前端框架 No.1:Svelte 以其独特的编译时优化机制著称,具有轻量级、高性能、易上手等特性,…

清华大学第四版:DeepSeek+DeepResearch:让科研像聊天一样简单!(附PDF免费下载)

还在为文献综述熬夜秃头?数据分析做到怀疑人生?清华大学与北航团队联合开发的DeepSeek+DeepResearch横空出世,彻底颠覆传统科研模式!这款AI工具让科研像聊天一样轻松,一键生成高质量报告,效率提升10倍!还在为文献综述熬夜秃头?数据分析做到怀疑人生?清华大学与北航团队…

2.Java基础

本章目标数据类型 变量和常量 运算符 数组 循环本章内容问题:任何编程语言都离不开数据的计算,那么在编程语言中能过什么来保存变化的计算的值,有哪些类型可以用于计算?这时我们就需要使用到:数据类型、变量、常量、运算符一、数据类型 java数据类型可分为两大类(基本数据…

不可不知的浏览器使用技巧

本文是《最全面的浏览器教程》第二篇,主要介绍浏览器的基本概念,基本技巧,以及相关设置。​ 本文是《最全面的浏览器教程》第二篇,主要介绍浏览器的基本概念,基本技巧,以及相关设置。 除此之外,还会介绍一些我平时遇到的问题和解决办法。 ‍ 浏览器是什么 简单来说,浏览…

codelldb-win32-x64.vsix 插件安装

vscode 安装 出++插件更新     nstalling platform package from https://github.com/vadimcn/codelldb/releases/download/v1.11.4/codelldb-win32-x64.vsix Error: Error: socket hang up https://github.com/vadimcn/codelldb/releases/vadimcn v1.11.4 e5aef55 Compar…