Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wcf 使用svcutil生成客户端代码_Wcf_Svcutil.exe - Fatal编程技术网

Wcf 使用svcutil生成客户端代码

Wcf 使用svcutil生成客户端代码,wcf,svcutil.exe,Wcf,Svcutil.exe,我正在尝试使用svcutil.exe工具生成客户端代理代码。以及它的错误 我正在使用以下命令 svcutil/名称空间:http://www.starstandard.org/STAR/5,*/out:STARContract.cs/noConfig SendOrderOrder.wsdl sendOrderType.xsd --------------------输出---------------------- 错误:验证导出期间生成的某些XML架构时出错: 这个http://www.star

我正在尝试使用svcutil.exe工具生成客户端代理代码。以及它的错误

我正在使用以下命令

svcutil/名称空间:http://www.starstandard.org/STAR/5,*/out:STARContract.cs/noConfig SendOrderOrder.wsdl sendOrderType.xsd

--------------------输出----------------------

错误:验证导出期间生成的某些XML架构时出错: 这个http://www.starstandard.org/STAR/5:SendOrder'元素未声明

错误:无法导入wsdl:portType 详细信息:运行WSDL导入扩展时引发异常:System.ServiceModel.Descripti on.xmlserializerMessageCompactImporter 错误:元素的http://www.starstandard.org/STAR/5:SendOrder“不见了。 XPath到错误源://wsdl:definitions[@targetNamespace='1]http://www.starstandards.org/webservices /2005/10/transport/bindings']/wsdl:portType[@name='starTransportPortTypes']

错误:无法导入wsdl:绑定 详细信息:导入wsdl:binding依赖的wsdl:portType时出错。 到wsdl:portType://wsdl:definitions[@targetNamespace=”的XPathhttp://www.starstandards.org/webservice s/2005/10/transport/bindings']/wsdl:portType[@name='starTransportPortTypes'] XPath到错误源://wsdl:definitions[@targetNamespace='1]http://www.starstandards.org/webservices /2005/10/transport/bindings']/wsdl:binding[@name='starTransport']

错误:无法导入wsdl:port 详细信息:导入wsdl:端口所依赖的wsdl:绑定时出错。 XPath到wsdl:binding://wsdl:definitions[@targetNamespace='1]http://www.starstandards.org/webservices /2005/10/transport/bindings']/wsdl:binding[@name='starTransport'] XPath到错误源://wsdl:definitions[@targetNamespace='1]http://www.starstandards.org/webservices /2005/10/transport/bindings']/wsdl:service[@name='SendOrderWebService']/wsdl:port[@name='SendOrderStarTransport']

正在生成文件。。。 警告:未生成任何代码。 如果您试图生成客户机,这可能是因为元数据文档不包含 n任何有效的合同或服务 或者因为发现所有合同/服务都存在于/引用程序集中。确认您 已将所有元数据文档传递给工具

警告:如果要从架构生成数据协定,请确保使用/datacontract 色调选择

---------输出结束-----------------

相对文件引用看起来不错

当我尝试使用WSE创建相同的代码时,它工作得很好,并且生成relate代理类而没有任何错误。但是,在使用svcutil.exe时,它不起作用


有什么想法吗?

我不熟悉您所指的WSDL/XSD,因此我无法解释失败的具体原因

然而,在我看来,.NETWSDL和xsd工具的代码生成方面已经中断了很长一段时间。它们不能处理许多标准的行业约定(包括处理AttributeGroup构造、在includes上强制名称空间、对可为零的元素处理不当等等)

如果您的WSDL/XSD文件使用import和/或include语句,那么.Net可能会遇到瓶颈。我曾经有过一些情况,像SOAPUI这样的工具可以正确处理WSDL并生成各种工件,但.Net无法应对


有些人在一个名为的工具上取得了一些成功,但不幸的是,在.Net能够处理WSDL/XSD文件之前,我通常都是手工平整/整理WSDL/XSD文件。

-1:这并没有回答问题,事实上,这更像是一种咆哮而不是一种回应。不,svcutil肯定适用于import&include语句。事实上,框架使用这些生成
wsdl
文件。这是一个答案。我打算将OP指向这些工具的已知问题,因此如果他的模式具有这些特征,他很清楚这可能是一条非常困难的道路。我已经浪费了无数天的时间来处理wsdl/XSD文件来解决这些问题。在大多数情况下,我应该我们从一开始就使用了其他工具或手工编码。谷歌“svcutil opentravel”的噩梦一瞥。这些工具在.Net生成的架构上非常有效,但如果您正在进行认真的互操作,则不会达到商业级别。我不是WSDL/XSD方面的专家,但我已经多次看到这种问题。即使我使用WSE生成代理,然后尝试使用该代理,它也不起作用。我尝试过WSCF蓝色,它确实起作用,但因为svcuti.exe起作用不管是什么原因,它都没有给我足够的信心来使用它。“Kirk”,不幸的是,模式(WSDL和XSD)太大了,我无法手动执行每次导入检查(在短时间内)(除非有我不知道的可用工具)。我想我已经要求更通用的WSDL版本。谢谢