我有一个项目,它依赖于Oracle Hosted Web服务(而不是WCF)。我有一份服务及其相关XSD的WSDL副本。WSDL处理外部服务的做法
生成代理和datacontract程序集的正确方法是什么?
我开始与
XSD.exe /c /language:CS user.xsd
对于每一个我的XSD的。这生成了一堆具有共享类型违例的类对象(所有类中都有相同的对象),所以我修剪了所有重复对象,以便它们具有单个声明。
然后建立了组装只用我的类文件“datacontracts.dll”
然后我产生我的服务客户
svcutil.exe user.wsdl /n*:SomeNameSpace /r:datacontracts.dll /noconfig
但这并没有真正似乎给了,因为它是我想还是导致了服务客户端内所有类的重复。
从我注意到每一个类定义的XSD生成的类里面有
[XmlType(Namespace = "urn:/crmondemand/xml/...")]
我需要放置该属性的方式,反复类展示了一次内部在那里我已各班成为单数班吗?所以我会有
[XmlType(Namespace = "urn:/crmondemand/xml/user")]
[XmlType(Namespace = "urn:/crmondemand/xml/campaign")]
[XmlType(Namespace = "urn:/crmondemand/xml/lead")]
public class SharedClass
或者我接近这个错误?
“依赖于Oracle托管的Web服务(而不是WCF)”如果我已经控制了代码,我可以用WCF替换Web服务我可能只是使用NHibernate。 – 2009-09-29 14:12:17
我会回答这个问题,因为它确实只是承认不是WCF吸收的Web服务,问题是Web服务不是WCF。 – 2009-10-19 12:49:41
非常感谢克里斯 - 但我实际上主张每个微软堆栈的Web服务我已经在这方面使用“糟透了”(尽管大部分 - 虽然 - 我喜欢MS的堆栈)... 我真的很鼓励你看看进入WSCF.Blue ......我认为它可以做你正在寻找的东西 - 或者至少让你更接近......(我在.NET中处理的每个项目都使用它)在哪里可以找到最大的'爆炸'为你的降压是'在单独文件中发射'的选择......然后 - 即使EXACT同一类不止一次发射,它会被覆盖...(假设它们不是'真正'的名称冲突) – dovholuk 2009-10-21 03:07:16