我已经通过Visual Studio 2008中的“添加服务引用”选项在我的本地工作站上的ASP.NET网站项目中创建了对IIS托管的WCF服务的引用。我能够从本地工作站执行该服务。
当我使用Visual Studio 2008中的“复制网站”功能将ASP.NET网站移动到开发服务器并浏览到使用该服务的页面时,出现以下错误:
Reference.svcmap:指定的参数 超出了有效值的范围。
有没有人遇到同样的错误,知道如何解决它?
编辑:我的开发服务器是带有IIS 6的Win2k3
答案 0 :(得分:1)
问题可能是由于与解决方案/项目文件夹结构和IIS网站文件夹结构不匹配。我很久以前遇到过类似的问题,最终改变了我部署Web服务的方式。 Here和here是对您的类似问题的一些讨论,他们最终没有使用添加服务生成的客户端并推出了自己的客户端。另外,我可以保证使用“发布网站”方法来部署我的服务。 Here是一篇关于Web服务部署模型的好文章。
答案 1 :(得分:1)
@Sixto Saez:我能够使用类似于您提供的资源,使用ServiceModel元数据实用工具(svcutil.exe)生成代理类。
这是确切的命令行:
svcutil /t:code http://<service_url> /out:<file_name>.cs /config:<file_name>.config
Here是我发现建议使用该方法的参考。
此外,我可以通过使用Visual Studio 2008“添加Web引用”命令创建引用来使用该服务。它基于.NET Framework 2.0 Web服务技术生成代码。
答案 2 :(得分:0)
不幸的是,WCF服务网站和我无法使用svcutil解决方案(除非你知道如何...)。您是使用Visual Studio 2008发布网站功能部署服务或网站的服务参考吗?