调用WebService报错404问题 (转载)

 

我想在MVC4的项目添加一个webservice文件,访问没问题,但是最后调用方法就报404错误。
但是如果我全新ASP.NET 空Web应用程序 然后再添加一个webservice文件,就一切OK。
下面说下流程并上图
--------------------------------------------------------------
先是新建MVC项目

然以选一个空的模板,并且选razor

然后项目就系统自动生成了,然后我再添加一个asmx文件当做webservice

好 直接运行 因为我直接放在项目根目录下,所以url指定为(系统给的本地默认端口号)/webservice1.asmx,访问没问题 调用就出问题了,报404,如下图

-----------------------------------------------------------------------------------------------------------------

然后我新建一个ASP.NET的空项目,不用MVC ,还是全部系统默认,

然后同样按照上面步骤在根目录新加一个webservice1.asmx,然后就能正常调用了

这个是怎么回事呢?请求一下解决方案,我使用的VS2013 PRO
请求一下解决方案

答案

这是由于ASP.NET MVC路由将asmx的调用当成MVC的路径去解析了,但是实际上WEB SERVICE的asmx调用和MVC没有半毛钱关系,所以要在MVC的路由中加入asmx文件路径的例外,让ASP.NET MVC的路由不去解析带.asmx的URL路径,而交由ASP.NET的Pipeline去负责asmx文件。

代码如下所示,注意将routes.IgnoreRoute("{resource}.asmx/{*pathInfo}")加入到MVC的全局路由配置文件RouteConfig.cs即可:

public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.IgnoreRoute("{resource}.asmx/{*pathInfo}"); routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
}

最新文章

  1. 基于ZK构建统一配置中心的方案和实践
  2. 根据起止日期构建指定查询条件:第N周(yyyy-MM-dd/yyyy-MM-dd)
  3. printf(),类型修饰符
  4. Android自动化测试之Monkeyrunner学习笔记(一)
  5. js的Array的map和sort实现方法
  6. mac 开发必备软件(不断update ing...)
  7. ios 录音
  8. LightOJ 1038-Race to 1 Again(概率dp)
  9. ARM GCC CodeSourcery 下载地址
  10. hdu1722
  11. linux (1)基本知识/目录/磁盘格式/文件系统
  12. php网上支付易宝
  13. LeetCode之“字符串”:最长回文子串
  14. Kubernetes 笔记 012 Pod 的自动扩容与缩容
  15. 基于阿里云 DNS API 实现的 DDNS 工具
  16. ios -- 成员变量、实例变量与属性的区别
  17. logbak 配置相关
  18. log4j下载地址及日志文件输入位置配置
  19. TcxGrid 内容 行高度
  20. Android 避免APP启动闪黑屏(Theme和Style)

热门文章

  1. XCTF-WEB-高手进阶区-Web_python_template_injection-笔记
  2. 手写IOC实现过程
  3. Elasticsearch第二篇:基本概念和基础操作
  4. C#LeetCode刷题之#58-最后一个单词的长度(Length of Last Word)
  5. Linux学习日志——基本指令②
  6. golang中type关键字使用
  7. volatile的特性代码验证
  8. python的一些使用体会
  9. JavaScript学习系列博客_25_JavaScript 数组(Array)
  10. chained get value from nested json