Gör så här: Använd Svcutil.exe för att ladda ned metadatadokument
Du kan använda Svcutil.exe för att ladda ned metadata från tjänster som körs och för att spara metadata i lokala filer. För HTTP- och HTTPS-URL-scheman försöker Svcutil.exe hämta metadata med WS-MetadataExchange och XML Web Service Discovery. För alla andra URL-scheman använder Svcutil.exe endast WS-MetadataExchange.
Som standard använder Svcutil.exe bindningarna som definierats i MetadataExchangeBindings klassen. För att konfigurera bindningen som används för WS-MetadataExchange måste du definiera en klientslutpunkt i konfigurationsfilen för Svcutil.exe (svcutil.exe.config) som använder IMetadataExchange
kontraktet och som har samma namn som URI-schemat (Uniform Resource Identifier) för metadataslutpunktsadressen.
Varning
När du kör Svcutil.exe för att hämta metadata för en tjänst som exponerar två olika tjänstkontrakt som var och en innehåller en åtgärd med samma namn, visar Svcutil.exe ett fel med texten "Det går inte att hämta metadata från ...". Om du till exempel har en tjänst som exponerar ett tjänstkontrakt med namnet ICarService
som har en åtgärd Get(Car c)
och samma tjänst exponerar ett tjänstkontrakt med namnet IBookService
som har en åtgärd Get(Book b)
. Gör något av följande för att lösa det här problemet:
Så här laddar du ned metadata med hjälp av Svcutil.exe
Leta upp verktyget Svcutil.exe på följande plats:
C:\Program Files\Microsoft SDKs\Windows\v1.0.\bin
I kommandotolken startar du verktyget med följande format.
svcutil.exe /t:metadata <url>* | <epr>
Du måste ange alternativet
/t:metadata
för att ladda ned metadata. Annars genereras klientkod och konfiguration.Argumentet
<url>
anger URL:en till en tjänstslutpunkt som tillhandahåller metadata eller till ett metadatadokument som finns online. Argumentet<epr>
anger sökvägen till en XML-fil som innehåller en WS-adresseringEndpointAddress
för en tjänstslutpunkt som stöder WS-MetadataExchange.
Fler alternativ för att använda det här verktyget för nedladdning av metadata finns i ServiceModel Metadata Utility Tool (Svcutil.exe).
Exempel
Följande kommando laddar ned metadatadokument från en tjänst som körs.
svcutil /t:metadata http://service/metadataEndpoint