WCF ServiceContract Arabirimi'nin .NET ad alanını değiştirmenin bir yolu var, ancak yine de WCF hizmetini eski (namespace dışında) ServiceContract kullanan istemcilerle geriye dönük uyumlu hale getirmenin bir yolu var mı? Örneğin, ben (vb.net olarak) olduğunu varsayalım:Hizmeti değiştirmeden WCF ServiceContract arabiriminin ad alanını değiştirebilir miyim?
Namespace MyCompany.MyPoorlyNamedProject
<ServiceContract(Name:="ThingService")> _
<CLSCompliant(True)> _
Public Interface IThingService
...
End Interface
EndNamespace
Ve ben hiç hizmet değiştirmeden
Namespace MyCompany.MyProject
<ServiceContract(Name:="ThingService")> _
<CLSCompliant(True)> _
Public Interface IThingService
...
End Interface
End Namespace
için bunu değiştirmek istiyorum.
Bunu yapmayı denedim, ancak xsds'ım, wsdl'den atıfta bulunulan yeni ad alanı adını gösterir.
Herhangi bir fikrin var mı?
+1 ben "Servis Add Reference" kullanmıyorum – vlad
tam cevap - bu beklenmedik sonuçlar elde edildi - http://stackoverflow.com/questions bkz/1294269/alma-hatadan-koddan-güncelleme-hizmet-başvuru-alma. Belki bu yine de işe yarayacak? Yakında deneyeceğim. –
@Patrick Szalapski: Peki, bu durumda, muhtemelen hizmet ve müşteri arasındaki sözleşmelerin montajını paylaşıyorsunuz değil mi? Çevresinde hiçbir şekilde - Bu durumda, ** elbette **, servis sözleşme ad alanlarını değiştirerek ** ** müşteri etkileyecektir. –