我在基本类型 XSD 中有一个声明的元素“RecordRefSet”;它是“RecordRef”元素的容器元素。“RecordRefSet”元素在一组 WSDL 中的不同位置被引用。
当我的第一个项目从这些 WSDL 和 XSD 生成代码时,生成的代码包括一个名为“RecordRefSet”的类,它在各个地方都使用。
但是当我的第二个项目从这些 WSDL 和 XSD 的子集生成代码时,生成的代码不包含名为“RecordRefSet”的类,而是在第一个项目使用“RecordRefSet”实例的地方直接使用“RecordRef”数组班级。
我想知道什么决定了 SVCUTIL 何时决定生成“RecordRefSet”类以及何时决定直接使用“RecordRef”数组。
我已经检查过它在这两种情况下运行的是完全相同版本的 SVCUTIL,具有相同的命令行选项(生成服务合同、XMLSerializer)。唯一的区别是第一个项目包含我所有的 WSDL 和 XSD 文件,生成的代码总量更大,第二个项目使用 WSDL 和 XSD 文件的子集。