【问题标题】:Using our own xsd file in WCF service在 WCF 服务中使用我们自己的 xsd 文件
【发布时间】:2012-11-25 20:54:18
【问题描述】:

我们有一个 xsd 文件,其中已经定义了合同。我们使用xsd.exe 为我们的WCF 服务生成类,并再次为我们的Web 服务使用XmlSerializerFormat

在我看来,这是一件很奇怪的事情,让 WCF 为 xsd.exe 为我们生成的类生成一个新的 XSD,而我们已经有了 XSD 定义。 .

虽然xsd.exe 为我们生成类做得很好,但它也简化了复杂类型,正如您在我的previous question 中看到的那样;意思是,xsd在生成类并再次在webservice中使用时实际上会发生一些变化; ArrayOfStringXXX 问题..

我们能否告诉 WCF 服务将我们自己的 xsd 文件用于其合同,而不是根据 xsd.exe 提供的内容生成新合同?

我尝试了什么:

TL;DR:我们能否将 WCF 服务指向我们自己的 xsd 文件,而不是让它自己生成?

谢谢

【问题讨论】:

    标签: c# wcf xsd wsdl xsd.exe


    【解决方案1】:

    您可以使用WSCF.blue 等工具从您的XSD 文件生成数据协定类。我有这方面的经验,在大多数情况下都可以。 See this blog for a good explanation.

    还有其他工具可以实现这一点,请参阅this question 获取一些建议。

    Visual Studio 2012 中似乎也为此提供了一个新选项,请参阅the documentation。我自己没有检查过。

    这种开发方式被称为契约优先,所以你可以在谷歌上找到更多信息:-)

    【讨论】:

    • 我已经尝试过 WSCF.blue,它还使用 string[] 而不是类...将研究 Contract-First 工具!
    • 似乎 WCF 选项窗格仅在“WCF 服务库”项目上可见,而不在“WCF 服务应用程序”上可见。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-24
    • 1970-01-01
    • 1970-01-01
    • 2023-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多