gpt4 book ai didi

wcf - SvcUtil.exe 的替代品?

转载 作者:行者123 更新时间:2023-12-03 14:52:51 26 4
gpt4 key购买 nike

我整天都在和 SvcUtil 搏斗,试图让它为一些 IMS 企业服务(主要是组管理服务,但我们也需要它来工作)生成有用的代码。你可以在这里找到 IMS 服务 WSDL http://www.imsglobal.org/es/index.html .

我得出的结论是,SvcUtil 是微软的一个无用的事后想法,即使是半途而废的方式也不支持 WSDL 和 XSD 标准。它无法生成符合标准 WSDL 契约(Contract)的 WCF 服务,IMS 同时使用 AND 功能。尽管从以下 WSDL (http://www.imsglobal.org/services/gms/wsdl/imsGroupManServiceSync_v1p0.wsdl) 生成了可编译代码,但观察从 WCF 服务生成的 WSDL(?wsdl、?wsdl=wsdl0、?xsd=xsd0 等)表明不存在任何操作,只有一个WCF 实际识别代码中生成的类型的一小部分。如果我们搞砸生成的代码,我们可以得到某种功能(我们正在使用 SoapUI 进行测试),但是它不再符合契约(Contract),所以它对真正需要调用这些服务的人来说毫无用处。

SvcUtil 有什么替代品吗? (请不要建议使用 Visual Studio 内置的“添加服务引用”工具,因为它使用与 SvcUtil 完全相同的代码。)我们需要一些能够让我们在一定程度上控制如何从 WSDL 契约(Contract)生成代码、每个部分最终位于哪些文件中、每个代码元素最终位于哪个命名空间等方面的控制。IMS 契约(Contract)导入特定于WSDL 中定义的服务,以及所有 IMS 服务通用的 XSD 类型。我们需要能够为这些类型生成不同的程序集,并在生成的代码中引用它们(类似于 SvcUtil 显然应该这样做......但它似乎并没有按照它的文档所说的那样做完全没有。)

到目前为止,我一直是 WCF 的忠实粉丝。当您仅使用 .NET/WCF 服务时,它显然可以工作,但任何时候您尝试在符合标准的跨平台环境中使用它时,一切都会变得糟糕。

最佳答案

你看过WCF Proxy Generator在 Codeplex 上?根据背后的人(Kate Gregory 和 Michele Leroux Bustamante),希望它可能有用 - 再加上您获得了资源,因此您可以随心所欲地调整/调整!

(我自己还没有时间认真研究它 - 但是 - 它在无休止的“待办事项”列表中......)

另外看看这个blog post here by Pedram Rezaei展示如何使用您自己的自定义代码影响 Visual Studio“添加服务引用”步骤。

关于wcf - SvcUtil.exe 的替代品?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2045867/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com