同一解决方案中WPF调用Web服务遇HTTP 403.14错误求助
解决WPF项目添加后Web服务无法正常访问(403.14)的问题
我之前也碰到过类似的情况,大概率是解决方案的启动配置或者Web服务项目的默认访问设置出了问题,给你几个针对性的解决思路:
1. 确认启动项目是否正确
- 当解决方案里同时有Web服务和WPF项目时,VS很可能会默认把新添加的WPF设为启动项目,或者启动时没有指定Web服务的端点。你需要单独把Web服务项目设为启动项:
- 右键解决方案 → 选择「设置启动项目」
- 切换到「单一启动项目」选项,选中你的Web服务项目,保存设置后再尝试启动。
2. 手动指定Web服务的启动URL
- 添加新项目后,VS可能重置了Web服务的启动配置,导致没有指向
.asmx文件。你可以手动配置:- 右键Web服务项目 → 打开「属性」
- 切换到「Web」标签页(VS2017里是这个标签),在「启动动作」里选「特定页」,然后输入你的服务路径,比如
~/MyWebService.asmx - 保存后重新启动Web服务,应该就能直接访问到asmx页面了。
3. 检查Web.config里的默认文档配置
- HTTP 403.14错误本质是服务器禁止目录浏览,又没有指定默认访问的文件。你可以在Web服务的
Web.config里手动指定默认文档:- 找到
<system.webServer>节点,添加或修改如下配置:<defaultDocument> <files> <add value="你的Web服务文件名.asmx" /> </files> </defaultDocument> <directoryBrowse enabled="false" /> - 替换成你实际的asmx文件名,这样服务器启动时会自动指向这个文件,不会出现目录禁止访问的错误。
- 找到
4. 清理并重新生成解决方案
- 有时候项目的缓存文件会导致配置异常,试试清理后重新生成:
- 点击菜单栏「生成」→「清理解决方案」
- 然后点击「生成解决方案」,再启动Web服务项目试试。
先从启动项目的设置开始排查,这是最常见的原因,应该能快速解决你的问题。
内容的提问来源于stack exchange,提问作者Jafar95
相关产品推荐
相关产品推荐

