【发布时间】:2011-08-22 19:58:29
【问题描述】:
我有简单的 WCF 服务应用程序(基于本教程:Getting Started)。我的问题是,当我向我的应用程序添加一个函数并想使用以下命令重新生成 Proxy.cs 文件时:
C:\kod>svcutil.exe /language:cs /out:Proxy.cs /config:app.config http://localhos
t:8000/PBMB
我得到以下结果。我知道重新生成这些文件的唯一解决方案是重新启动我的计算机。但是每次我改变任何东西都这样做是令人沮丧的。有人可以帮忙吗?
结果:
Microsoft (R) 服务模型元数据 工具 [Microsoft (R) Windows (R) 通信基础,版本 4.0.30319.1] 版权所有 (c) Microsoft Corporation。保留所有权利。
尝试从以下位置下载元数据 'http://localhost:8000/PBMB' 使用 WS-元数据交换或 DISCO。错误: 无法导入 wsdl:portType 详细信息:An 运行时抛出异常 WSDL 导入扩展:System.Se rviceModel.Description.DataContractSerializerMessageContractImporter 错误:带有目标命名空间的架构 找不到“http://PBMB”。 错误源的 XPath: //wsdl:definitions[@targetNamespace='http://PBMB']/wsdl:p ortType[@name='IService']
错误:无法导入 wsdl:binding 详细信息:导入一个错误 wsdl:binding 所在的 wsdl:portType 依赖于。 wsdl:portType 的 XPath: //wsdl:定义[@targetNamespace='http://PBMB']/wsdl: portType[@name='IService'] XPath 到 错误来源: //wsdl:definitions[@targetNamespace='http://tempuri.org/' ]/wsdl:binding[@name='WSHttpBinding_IService']
错误:无法导入 wsdl:port 详细信息: 导入一个错误 wsdl:binding wsdl:port 是 依赖于。 wsdl 的 XPath:绑定: //wsdl:definitions[@targetNamespace='http://tempuri.org/' ]/wsdl:binding[@name='WSHttpBinding_IService'] 错误源的 XPath: //wsdl:definitions[@targetNamespace='http://tempuri.org/' ]/wsdl:service[@name='PBMBService']/wsdl:port[@name='WSHttpBinding_IService']
正在生成文件...警告:无代码 生成了。如果你试图 生成一个客户端,这可能是 因为元数据文件确实 不包含任何有效的合同或 服务或因为所有 合同/服务被发现 存在于 /reference 程序集中。 验证您是否通过了所有 元数据文档到工具中。
警告:如果您想生成 来自模式的数据契约确保 使用 /dataContractOnly 选项。
【问题讨论】:
-
什么是托管您的服务实现、IIS、Casini?当您在重新生成代理时遇到错误时,您可以杀死该主机进程并重新启动它吗?
-
我不知道我的主机配置。严重地。我做了所有的事情,就像我给出链接的教程一样。并且关闭应用程序也无济于事。
标签: c# wcf visual-studio-2010