Aracılığıyla paylaş


WCF Uzantısı için Özel Meta Verileri Dışarı Aktarma

Windows Communication Foundation'da (WCF), meta veri dışarı aktarma, hizmet uç noktalarını açıklama ve istemcilerin hizmetin nasıl kullanılacağını anlamak için kullanabileceği paralel, standartlaştırılmış bir gösterime yansıtma işlemidir. Özel meta veriler, sistem tarafından sağlanan meta veri verenlerin dışarı aktaramadığı XML öğelerinden oluşur. Bu genellikle, kullanıcı tanımlı davranışlar ve bağlama öğeleri için özel WSDL öğelerini ve bağlamaların ve sözleşmelerin özellikleri ve gereksinimleri hakkında ilke onaylarını içerir.

Bu bölümde, özel WSDL veya ilke onaylarını dışarı aktarma işlemi açıklanır ve dışarı aktarma işleminin kendisine odaklanmaz. Meta verilerin özel veya sistem tarafından oluşturulur olmasına bakılmaksızın meta verileri dışarı ve içeri aktaran türleri kullanma hakkında daha fazla bilgi için bkz . Meta Verileri Dışarı Ve İçeri Aktarma.

Genel bakış

meta veriler kullanılarak System.ServiceModel.Description.ServiceMetadataBehaviorSystem.ServiceModel.Description.ServiceDescription yayımlandığında incelenir ve WCF'nin sistem tarafından sağlanan öznitelikler ve bağlamalar kullanılarak desteklenebileceği tüm sözleşmeler ve bağlamalar için XSD ve WSDL (ilke onayları dahil) oluşturulur. Ancak, özel davranış öznitelikleri veya bağlama öğeleri düzgün dışarı aktarılmadan önce destek gerektirir.

Bu bölümde aşağıdakiler açıklanmaktadır:

  1. WSDL'yi yayımlamadan önce WSDL oluşturma verilerini kullanıma sunan arabirimini uygulama ve kullanma System.ServiceModel.Description.IWsdlExportExtension .

  2. WSDL verilerinde System.ServiceModel.Description.IPolicyExportExtension ilke onaylarını dışarı aktarmadan önce ilke verilerini kullanıma sunan arabirimi uygulama ve kullanma.

Özel WSDL ve ilke onaylarını içeri aktarma hakkında daha fazla bilgi için bkz . WCF Uzantısı için Özel Meta Verileri İçeri Aktarma.

Özel WSDL Öğelerini Dışarı Aktarma

IWsdlExportExtension bir işlem davranışı, sözleşme davranışı, uç nokta davranışı veya bağlama öğesi (IOperationBehaviorsırasıyla , IContractBehaviorIEndpointBehaviorveya System.ServiceModel.Channels.BindingElement ) uygulayın ve dışarı aktarmaya çalıştığınız hizmetin açıklamasına davranışları veya bağlama öğelerini ekleyin. (Davranış ekleme hakkında daha fazla bilgi için bkz. Çalışma Zamanını Davranışlarla Yapılandırma ve Genişletme). IWsdlExportExtension her uç nokta için çağrılır ve henüz dışarı aktarılmadıysa her uç nokta önce sözleşmeyi dışarı aktarır. gereksinimlerinize bağlı olarak her iki dışarı aktarma işlemine de katılabilirsiniz:

ExportContract yöntemi, dışarı aktarılmakta olan örnekteki System.ServiceModel.Description.ContractDescription tüm IWsdlExportExtension uygulamalarda çağrılır. ExportEndpoint yöntemi, dışarı aktarılmakta System.ServiceModel.Description.ServiceEndpoint olan örnekle tüm IWsdlExportExtension uygulamalarda çağrılır.

Daha fazla bilgi için bkz . Nasıl yapılır: Özel WSDL'yi Dışarı Aktarma ve örnek Özel WSDL Yayını.

Özel İlke Onaylarını Dışarı Aktarma

üzerinde BindingElement uygulamasını IPolicyExportExtension uygulayın ve bağlamaya bağlama öğesini ekleyerek WSDL'ye bağlama desteği ve sözleşme özellikleri hakkında özel ilke onayları yazın. bir IPolicyExportExtension bağlamada uygulanan bağlama öğesi dışarı aktarılırken bir kez çağrılır ve yöntemine PolicyConversionContextExportPolicy geçirir. İleti, işlem veya uç nokta konularında PolicyConversionContext WSDL bağlamasına eklenen ilke onaylarına eklemek için örnekteki yöntemleri kullanabilirsiniz.

Daha fazla bilgi için bkz . Nasıl yapılır: Özel İlke Onaylarını Dışarı Aktarma.

Ayrıca bkz.