【发布时间】:2011-01-18 17:30:07
【问题描述】:
我部署了一个 WCF 服务,当应用程序池以特定域用户身份运行时效果很好,但是当我将应用程序池更改为以不同用户身份运行时,我收到 XPATH 错误并且我的服务甚至没有返回元数据。我很困惑 - 我的新用户拥有所有服务文件(包括配置文件)的权限,作为应用程序池身份运行良好,并且数据库权限无关紧要,因为我什至无法提取合同列表。
任何人都可以对此有所了解吗?我附上了尝试使用 WCF 测试客户端连接时收到的错误文本。更改应用程序池以作为第一个用户和测试客户端运行会拉出一个合同列表,我可以毫无问题地调用一个方法。请救救我!
错误:无法导入 wsdl:portTypeDetail: 异常是 运行 WSDL 导入时抛出 延期: System.ServiceModel.Description.DataContractSerializerMessageContractImporterError: 具有目标命名空间的架构 'http://UsBankRtSvc.Model/2010/Service' 找不到。XPath 出错 资源: //wsdl:definitions[@targetNamespace='http://UsBankRtSvc.Model/2010/Service']/wsdl:portType[@name='UsBankRealTimeServiceContract']错误: 无法导入 wsdl:bindingDetail: 导入一个错误 wsdl:binding 所在的 wsdl:portType 依赖于.XPath 到 wsdl:portType: //wsdl:definitions[@targetNamespace='http://UsBankRtSvc.Model/2010/Service']/wsdl:portType[@name='UsBankRealTimeServiceContract']XPath 到错误源: //wsdl:definitions[@targetNamespace='http://UsBankRtSvc.Model/2010/Service']/wsdl:binding[@name='DefaultEndpoint']错误: 无法导入 wsdl:portDetail: 那里 导入 wsdl:binding 时出错 wsdl:port 是依赖的 on.XPath 到 wsdl:binding: //wsdl:definitions[@targetNamespace='http://UsBankRtSvc.Model/2010/Service']/wsdl:binding[@name='DefaultEndpoint']XPath 到错误源: //wsdl:definitions[@targetNamespace='http://UsBankRtSvc.Model/2010/Service']/wsdl:service[@name='UsBankRealTimeSvc']/wsdl:port[@name='DefaultEndpoint']警告: 没有生成代码。如果你是 试图生成一个客户,这 可能是因为元数据 文件不包含任何有效的 合同或服务或因为所有 合同/服务被发现 存在于 /reference 程序集中。核实 你传递了所有的元数据 文件到工具。警告:如果你 想生成数据合约 从模式确保使用 /dataContractOnly 选项。
【问题讨论】:
标签: .net wcf wcf-binding