Simon Fell > Its just code > name="parameters"

Monday, July 31, 2006

While I'm ranting and raving about WSDL, I should moan about this one again, this time its thanks to the Redmond folks for this one. Here's two wsdls they describe the same service, the messages on the wire, are Identiical, yet run them through wsdl.exe (or VS.NET's add web reference), and you'll see that the tools decide to change programming models on you, based on the wsdl:parts name attribute. This attribute is internal to the WSDL doc, and largely unused, yet VS.NET will switch between 2 different programming models based on the value in this attribute. I have no issues with a tool supporting multiple programming models, but why should I as a service author get to dictate to you what programming model to use, note that's this is the only way to affect the programming model generated, there's no swtich, wizard option or anything that i could find so that the client can indicate which programming model he'd like to us. It really makes no sense whatever. To compound the problem other vendors have copied this idoitic mistake, sheesh.