梦魇试图从XSD生成代码

时间:2009-07-31 09:03:03

标签: c# asp.net xsd xsd.exe

我确信过去曾多次询问过这个问题,但我对此有一个噩梦。

我有一组具有大量复杂类型的XSD架构。其中之一是:

<complexType name="commandType">
  <sequence>
    <choice>
      <element name="check" type="epp:readWriteType"/>
    </choice>
  </sequence>
</complexType>

但是,“check”实际上应该是一个“checkType”....但它不可能,因为这样做会在包含文件中产生某种疯狂的循环,所以设计工具就是不要让你做这个。因此,readWriteType大概是一个类似于checkType派生的类(我不知道,我可能在撒谎)。

readWriteType但是,看起来像这样:

<complexType name="readWriteType">
  <sequence>
    <any namespace="##other"/>
  </sequence>
</complexType>

所以代码生成工具还没有弄清楚如何处理它,或者checkType如何与readWriteType相关。这太令人沮丧了。

无论如何,只是希望这里有人可能有脑电波!

哦,XSD.exe不适用于这些类,所以我正在尝试使用一些第三方工具,关于在complexType之前需要元素。

谢谢,P

1 个答案:

答案 0 :(得分:1)

我看不出你怎么解决这个问题 - 只要你使用<any>元素类型,生成的代码将总是相当通用并使用大量object元素。

为什么不能让元素check属于checkType类型?这确实是让事情理顺的唯一方​​法 - 如果你有明确定义的类型,那么代码生成可以做些什么。

马克