.NET WSDL生成xs:选择名称“选择绑定枚举”

|| 我正在生成Java Web服务WSDL,然后每次进行更改时将其导入到C#应用程序中。每次完成此操作后,都会重新生成
xs:choice
元素,但通常会根据最初生成哪个元素而使用不同的编号。例如,假设我导入WSDL时会生成
ItemChoiceType1
ItemChoiceType2
。下次导入WSDL(更改后)时,它将切换ѭ1和ѭ2,因此我必须重新编码使用那些ѭ5的位置。无论如何,是否要为这些结构重命名或指定名称,还是让它们每次都以相同的方式生成? 谢谢     
已邀请:
因此,此对象(myObject)具有属性(myProperty),该属性的类型在生成时可能会更改,并且其值是从Enum分配的。使用此属性设置器功能: ///从Enum设置属性值 /// 私有静态无效propertySetter(类型typeNeeded,对象targetObject,字符串propName,字符串fieldName) {         var theDesiredValue = Enum.Parse(typeNeeded,fieldName);
    Type t = targetObject.GetType();
    PropertyInfo info = t.GetProperty(propName);
    if ((info == null) || (!info.CanWrite))
        return;
    info.SetValue(targetObject, theDesiredValue, null);
    return;
} //用法 propertySetter(myObject.myProperty.GetType(),myObject,\“ myProperty \”,\“ enumValue \”);     
这是WSDL.EXE的默认行为。由于xs:choice元素是未命名的序列,因此它们正在接收WSDL.EXE生成的名称。 据我所知,.NET端没有解决方法,如果您重新导入WSDL,该解决方法将不会被覆盖。 如果您对Java WSDL有一定的控制权,则可以指定complexTypes来包装序列并为每种类型指定名称。这可能会生成您可以尝试使用的更有用的WSDL。     

要回复问题请先登录注册