Publikowanie metadanych
Usługi Windows Communication Foundation (WCF) publikują metadane, publikując co najmniej jeden punkt końcowy metadanych. Metadane usługi publikowania udostępniają metadane przy użyciu standardowych protokołów, takich jak żądania WS-MetadataExchange (MEX) i HTTP/GET. Punkty końcowe metadanych są podobne do innych punktów końcowych usługi, w których mają adres, powiązanie i kontrakt oraz można je dodać do hosta usługi za pomocą konfiguracji lub kodu imperatywnego.
Publikowanie punktów końcowych metadanych
Aby opublikować punkty końcowe metadanych dla usługi WCF, należy najpierw dodać ServiceMetadataBehavior zachowanie usługi do usługi. System.ServiceModel.Description.ServiceMetadataBehavior Dodanie wystąpienia umożliwia usłudze uwidacznienie punktów końcowych metadanych. Po dodaniu System.ServiceModel.Description.ServiceMetadataBehavior zachowania usługi można uwidocznić punkty końcowe metadanych, które obsługują protokół MEX lub które odpowiadają na żądania HTTP/GET.
Element używa elementu do WsdlExporter eksportowania System.ServiceModel.Description.ServiceMetadataBehavior metadanych dla wszystkich punktów końcowych usługi w usłudze. Aby uzyskać więcej informacji na temat eksportowania metadanych z usługi, zobacz Eksportowanie i importowanie metadanych.
Element System.ServiceModel.Description.ServiceMetadataBehavior dodaje ServiceMetadataExtension wystąpienie jako rozszerzenie do hosta usługi. Element System.ServiceModel.Description.ServiceMetadataExtension udostępnia implementację protokołów publikowania metadanych. Możesz również użyć elementu System.ServiceModel.Description.ServiceMetadataExtension , aby pobrać metadane usługi w czasie wykonywania, korzystając ServiceMetadataExtension.Metadata z właściwości .
Punkty końcowe metadanych MEX
Aby dodać punkty końcowe metadanych używające protokołu MEX, dodaj punkty końcowe usługi do hosta usługi korzystającego z kontraktu IMetadataExchange
usługi. Program WCF zawiera IMetadataExchange interfejs z tą nazwą kontraktu usługi, którego można użyć w ramach modelu programowania WCF. Punkty końcowe WS-MetadataExchange lub punkty końcowe MEX mogą używać jednego z czterech domyślnych powiązań udostępnianych przez metody fabryki statycznej w MetadataExchangeBindings klasie, aby dopasować domyślne powiązania używane przez narzędzia WCF, takie jak Svcutil.exe. Punkty końcowe metadanych MEX można również skonfigurować przy użyciu własnego powiązania niestandardowego.
Punkty końcowe metadanych HTTP GET
Aby dodać punkt końcowy metadanych do usługi, który odpowiada na żądania HTTP/GET, ustaw HttpGetEnabled właściwość na System.ServiceModel.Description.ServiceMetadataBehavior wartość true
. Możesz również skonfigurować punkt końcowy metadanych używający protokołu HTTPS, ustawiając HttpsGetEnabled właściwość na System.ServiceModel.Description.ServiceMetadataBehavior wartość true
.
W tej sekcji
Instrukcje: publikowanie metadanych dla usługi za pomocą pliku konfiguracji
Pokazuje, jak skonfigurować usługę WCF w celu publikowania metadanych, aby klienci mogli pobierać metadane przy użyciu elementu WS-MetadataExchange lub żądania HTTP/GET przy użyciu ?wsdl
ciągu zapytania.
Instrukcje: publikowanie metadanych dla usługi przy użyciu kodu
Pokazuje, jak włączyć publikowanie metadanych dla usługi WCF w kodzie, aby klienci mogli pobrać metadane przy użyciu elementu WS-MetadataExchange lub żądania HTTP/GET przy użyciu ?wsdl
ciągu zapytania.