C# MVC webservice 本地 IIS express 调试

调试项目webservice时出现两个错误

未能加载文件或程序集或它的某一个依赖项。试图加载格式不正确的程序。

问题:DLL是32位,主程序是64位,尝试了设置项目属性中的目标平台为x86,设置过解决方案的属性页-配置属性,均无效果;

解决:最后经老哥提醒,设置对网站和项目使用IIS Express的64位版,不勾选,目标平台选择Any CPU或者x86都可以了。

原因:未知

 

问题:MVC webservice 本地 IIS express 调试 时,使用网页输入参数调试接口时,报错404,找不到URL;

原因:(未验证)这是由于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}")

          以及

     routes.IgnoreRoute("{*allasmx}", new {allasmx=@".*\.asmx(/.*)?"});

           加入到MVC的全局路由配置文件RouteConfig.cs中。

 参考资料:

https://www.cnblogs.com/OpenCoder/p/7805989.html

https://blog.csdn.net/qq_15566419/article/details/52062419

posted @ 2019-07-31 09:59  Marcurio  阅读(807)  评论(0编辑  收藏  举报