Útmutató: Metaadat-dokumentumok letöltése Svcutil.exe használatával
A Svcutil.exe használatával metaadatokat tölthet le a futó szolgáltatásokból, és mentheti a metaadatokat a helyi fájlokba. HTTP- és HTTPS-URL-sémák esetén Svcutil.exe megpróbál metaadatokat lekérni a WS-MetadataExchange és az XML Web Service Discovery használatával. Az összes többi URL-séma esetében Svcutil.exe csak WS-MetadataExchange-t használ.
Alapértelmezés szerint Svcutil.exe az osztályban MetadataExchangeBindings definiált kötéseket használja. A WS-MetadataExchange-hez használt kötés konfigurálásához meg kell adnia egy ügyfélvégpontot Svcutil.exe (svcutil.exe.config) konfigurációs fájljában, amely a szerződést használja IMetadataExchange
, és amelynek neve megegyezik a metaadat-végpont címének egységes erőforrás-azonosító (URI) sémájának nevével.
Figyelemfelhívás
Ha Svcutil.exe futtat egy olyan szolgáltatás metaadatainak lekéréséhez, amely két különböző, azonos nevű műveletet tartalmazó szolgáltatási szerződést tesz elérhetővé, Svcutil.exe a következő hibaüzenet jelenik meg: "A metaadatok nem kérhetők le ...." Ha például olyan szolgáltatással rendelkezik, amely egy olyan szolgáltatási szerződést tesz elérhetővé, amelynek egy ICarService
művelete Get(Car c)
van, és ugyanaz a szolgáltatás egy olyan szolgáltatási szerződést tesz elérhetővé, amelynek a neve IBookService
művelettel Get(Book b)
rendelkezik. A probléma megoldásához tegye az alábbiak egyikét:
Metaadatok letöltése Svcutil.exe
Keresse meg a Svcutil.exe eszközt a következő helyen:
C:\Program Files\Microsoft SDKs\Windows\v1.0.\bin
A parancssorban indítsa el az eszközt az alábbi formátumban.
svcutil.exe /t:metadata <url>* | <epr>
Meg kell adnia a
/t:metadata
metaadatok letöltésének lehetőségét. Ellenkező esetben az ügyfélkód és a konfiguráció létre lesz hozva.Az <
url
>argumentum megadja a metaadatokat biztosító szolgáltatásvégpont vagy az interneten üzemeltetett metaadat-dokumentum URL-címét. Az <epr
> argumentum megadja a WS-MetadataExchange szolgáltatást támogató szolgáltatásvégpont WS-címzésétEndpointAddress
tartalmazó XML-fájl elérési útját.
Az eszköz metaadatok letöltésére való használatával kapcsolatos további lehetőségekért lásd : ServiceModel Metadata Utility Tool (Svcutil.exe).
Példa
Az alábbi parancs metaadat-dokumentumokat tölt le egy futó szolgáltatásból.
svcutil /t:metadata http://service/metadataEndpoint