Bir WCF istemcisine eklemek istediğim bir WCF davranış uzantım var. Ancak, istemci programsal olarak yapılandırılmıştır. Bitiş noktası adresi değişebilir, ancak türünü biliyorum. Davranışları programsal olarak veya yapılandırma dosyasında (tercih edilen) ekleyebilirim, ancak yalnızca yapılandırma dosyasında bazı yapılandırmaları geçmem gerekiyor.Programlı olarak oluşturulan bitiş noktasında WCF davranış uzantısını bildirimsel olarak yapılandırın
Bunu Ortak davranışlarda istemiyorum (machine.config).
Ben davranışı programlı
endpoint.Behaviors.Add(new MyCustomBehavior())
ekleyebilir Ama doğrusu config de yapardım, bu yüzden de orada uzantısı yapılandırabilirsiniz.
İstemci son noktasını programlı olarak oluştururken, yalnızca tür veya arabirimi bilerek programlı olarak oluşturulmuş bir son noktaya bir uç nokta davranış uzantısını deklaratif olarak eklemek ve yapılandırmak mümkün mü?
<system.serviceModel>
<client>
<!-- Created programmatically -->
</client>
<extensions>
<behaviorExtensions>
<add name="MyCustomBehavior" type="namespace.CustomBehaviors", MyAssembly, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null" />
</behaviorExtensions>
</extensions>
<behaviors>
<endpointBehaviors>
<behavior name="MyCustomBehavior">
<MyCustomBehavior MyImportantBehaviorParam1="foo" />
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
Elbette başka bölümde yapılandırma koymak ve orada okumak benim davranış var ama mümkünse ben daha çok WCF imkanları kullanmayı tercih ediyorum başladı.
Davranışım zaten Davranış Uzantısı, parametreyi dikkate uygular ... Üzgünüm benim sorum net, ancak tüm içinde olmazsa bulabildiğim örnekler, behaviotik olarak oluşturulmuş bir son noktaya (service veya client) behaviorConfiguration eklenir. Programatik olarak oluşturulan belirli bir sözleşme ile uç noktalara nasıl ekleneceğini bilmem gerekiyor. –
DanO
Anladım, daha önce anlamadım. Cevabı bu ile güncelledim ve tam kodu https://github.com/carlosfigueira/WCFQuickSamples/tree/master/WCFForums/QuickCode1 adresinde bulabilirsiniz. – carlosfigueira
Bu geçici çözümü sağlamak için çaba sarf ettiğiniz için teşekkürler! Ben daha kolay olanı lehine istediğimi yapmaktan vazgeçtim, ama bu projeyi tekrar ziyaret edersem kodunuz çok yardımcı olacak! – DanO