我刚刚在VS2013中使用框架3.5创建了一个WCF服务应用程序。用于公开我在类库项目中的一些方法。
一切都很顺利,但当我试图查看服务是否运行时,却没有。相反,我得到了下一个错误。
HTTP错误404.17 - 未找到请求的内容似乎是 脚本,静态文件处理程序不会提供服务。
最有可能的原因:请求与通配符mime映射匹配。该 请求被映射到静态文件处理程序。如果有不同 在前提条件下,请求将映射到不同的处理程序。
您可以尝试的事项:如果您想将此内容作为静态内容提供 文件,添加一个显式的MIME映射。
我已经在IIS上处理了它,但是现在在IIS Expres我有点迷失了。
我没有在这台机器上安装IIS,因为我使用的是遥控器,但是我需要调试一些东西而且我被卡住了。谢谢你的帮助。
我还使用可视命令提示符运行了servicesmodelreg -i,但错误仍然存在。
更新
澄清它可能是有用的,它只发生在IIS Express中,因此它正在影响开发。我已将VS2013更新为在Win 8.1 64bit上运行的最新补丁
答案 0 :(得分:19)
尝试运行“C:\ Program Files \ IIS Express> Wscript.exe WCF35Setup.js install”,这是一个在IIS Express上启用WCF 3.5服务的脚本。 参考:http://www.iis.net/learn/extensions/introduction-to-iis-express/iis-75-express-readme
答案 1 :(得分:5)
似乎WCF映射未在IIS中注册。
解决上述错误:
导航至"
%SYSTEMROOT%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation
"在Visual Studio命令提示符下。
servicemodelreg -i
"手动安装映射。有关详细信息,请参阅 MSDN 上的ServiceModel Registration Tool (ServiceModelReg.exe)。
-
<强>替代地强>,
为Windows功能中的WCF服务启用HTTP Activation
。
来源:
http://msdn.microsoft.com/en-us/library/ms732012(v=vs.110).aspx
答案 2 :(得分:1)