This documentation is archived and is not being maintained.

IMetadataExchange Interface

Exposes methods used to return metadata about a service.

Namespace:  System.ServiceModel.Description
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

<ServiceContractAttribute(ConfigurationName := "IMetadataExchange", Name := "IMetadataExchange",  _
	Namespace := "")> _
Public Interface IMetadataExchange
Dim instance As IMetadataExchange

When programming Windows Communication Foundation (WCF) services, it is useful to publish metadata about the service. For example, metadata can be a Web Services Description Language (WSDL) document that describes all of the methods and data types employed by a service. Returning metadata about an WCF service allows consumers of a service to easily create clients for the service. For more information about WCF metadata endpoints, see Metadata.

Services implemented using WCF publish metadata by exposing one or more metadata endpoints. Metadata endpoints in WCF have an address, a binding and a contract like any other endpoint. The MetadataReference interface specifies the service contract implemented by all metadata endpoints in WCF.

There is no need to implement the MetadataReference contract in your service implementation. Instead, add the ServiceMetadataBehavior to the service description.

Or, when using configuration, set the contract attribute of the endpoint element to IMetadataExchange. For an example, see How to: Publish Metadata for a Service Using a Configuration File.

For details on publishing metadata in WCF see Publishing Metadata.

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0