MetadataResolver Klas

Definitie

Hiermee worden metagegevens opgehaald en geïmporteerd als ServiceEndpoint objecten.

public ref class MetadataResolver abstract sealed
public static class MetadataResolver
type MetadataResolver = class
Public Class MetadataResolver
Overname
MetadataResolver

Voorbeelden

In het volgende codevoorbeeld ziet u hoe de MetadataResolver klasse metagegevens retourneert als een verzameling ServiceEndpoint objecten die vervolgens worden gebruikt om verbinding te maken met een service-exemplaar.

// Get the endpoints for such a service
ServiceEndpointCollection endpoints = MetadataResolver.Resolve(typeof(SampleServiceClient), metaAddress);
Console.WriteLine("Trying all available WS-Transfer metadata endpoints...");

foreach (ServiceEndpoint point in endpoints)
{
    if (point != null)
    {
        // Create a new wcfClient using retrieved endpoints.
        wcfClient = new SampleServiceClient(point.Binding, point.Address);
        Console.WriteLine(
          wcfClient.SampleMethod("Client used the "
          + point.Address.ToString()
          + " address.")
        );
        wcfClient.Close();
    }
}

In het volgende codevoorbeeld ziet u hoe u MetadataResolver metagegevens kunt downloaden en retourneren als een verzameling objecten met behulp van een HTTP GET-aanvraag in plaats van ServiceEndpoint WS-Transfer.

// Get the endpoints for such a service using Http/Get request
endpoints = MetadataResolver.Resolve(typeof(SampleServiceClient), httpGetMetaAddress.Uri, MetadataExchangeClientMode.HttpGet);
Client.WriteParameters(endpoints);
ISampleService serviceChannel;
Console.WriteLine(
  "\r\nTrying all endpoints from HTTP/Get and with direct service channels...");

foreach (ServiceEndpoint point in endpoints)
{
    if (point != null)
    {
        ChannelFactory<ISampleService> factory = new ChannelFactory<ISampleService>(point.Binding);
        factory.Endpoint.Address = point.Address;
        serviceChannel = factory.CreateChannel();
        Console.WriteLine("Client used the " + point.Address.ToString() + " address.");
        Console.WriteLine(
          serviceChannel.SampleMethod(
            "Client used the " + point.Address.ToString() + " address."
          )
        );
        factory.Close();
    }
}

Opmerkingen

Gebruik de MetadataResolver klasse om snel eindpunten te importeren voor een service uit metagegevens. Met deze klasse worden metagegevens gedownload en geconverteerd naar ServiceEndpoint objecten. Als u metagegevens wilt downloaden en deze informatie als een System.ServiceModel.Description.MetadataSetwilt verwerken, raadpleegt System.ServiceModel.Description.MetadataExchangeClientu .

Methoden

Name Description
BeginResolve(IEnumerable<ContractDescription>, EndpointAddress, AsyncCallback, Object)

Hiermee wordt een asynchrone aanroep gestart waarmee een metagegevensadres wordt omgezet in de ServiceEndpoint objecten voor de opgegeven contracten, met behulp van het opgegeven adres en de asynchrone status en gemachtigde.

BeginResolve(IEnumerable<ContractDescription>, EndpointAddress, MetadataExchangeClient, AsyncCallback, Object)

Hiermee wordt een asynchrone aanroep gestart waarmee een metagegevensadres wordt omgezet in de ServiceEndpoint objecten voor de opgegeven contracten, met behulp van het opgegeven adres, MetadataExchangeClientde asynchrone status en gemachtigde.

BeginResolve(IEnumerable<ContractDescription>, Uri, MetadataExchangeClientMode, AsyncCallback, Object)

Hiermee wordt een asynchrone aanroep gestart waarmee een metagegevensadres wordt omgezet in de ServiceEndpoint objecten voor de opgegeven contracten, met behulp van het opgegeven adres, MetadataExchangeClientMode de waarde, de asynchrone status en delegering.

BeginResolve(IEnumerable<ContractDescription>, Uri, MetadataExchangeClientMode, MetadataExchangeClient, AsyncCallback, Object)

Hiermee wordt een asynchrone aanroep gestart waarmee een metagegevensadres wordt omgezet in de ServiceEndpoint objecten voor de opgegeven contracten, met behulp van het opgegeven adres, MetadataExchangeClient, MetadataExchangeClientModeasynchrone status en gemachtigde.

BeginResolve(Type, EndpointAddress, AsyncCallback, Object)

Hiermee wordt een asynchrone aanroep gestart waarmee een metagegevensadres wordt omgezet in de ServiceEndpoint objecten voor het opgegeven contract met behulp van het opgegeven adres en de asynchrone status en gemachtigde.

BeginResolve(Type, Uri, MetadataExchangeClientMode, AsyncCallback, Object)

Hiermee wordt een asynchrone aanroep gestart waarmee een metagegevensadres wordt omgezet in de ServiceEndpoint objecten voor het opgegeven contract, met behulp van het opgegeven adres, MetadataExchangeClientModede asynchrone status en gemachtigde.

EndResolve(IAsyncResult)

Hiermee wordt een asynchrone aanroep voltooid om metagegevens op te lossen in een verzameling eindpunten.

Resolve(IEnumerable<ContractDescription>, EndpointAddress, MetadataExchangeClient)

Hiermee wordt een metagegevensadres omgezet in de ServiceEndpoint objecten voor de opgegeven contracten met behulp van het opgegeven metagegevensadres en MetadataExchangeClient.

Resolve(IEnumerable<ContractDescription>, EndpointAddress)

Hiermee wordt een metagegevensadres omgezet in de ServiceEndpoint objecten voor de opgegeven contracten met behulp van het opgegeven metagegevensadres.

Resolve(IEnumerable<ContractDescription>, Uri, MetadataExchangeClientMode, MetadataExchangeClient)

Hiermee wordt een metagegevensadres omgezet in de ServiceEndpoint objecten voor de opgegeven contracten met behulp van het opgegeven adres, de overdrachtsmodus en de overdrachtsclient.

Resolve(IEnumerable<ContractDescription>, Uri, MetadataExchangeClientMode)

Hiermee wordt een metagegevensadres omgezet in de ServiceEndpoint objecten voor de opgegeven contracten met behulp van het opgegeven adres en de overdrachtsmodus.

Resolve(Type, EndpointAddress)

Hiermee wordt een metagegevensadres gedownload en omgezet in een verzameling ServiceEndpoint objecten voor een opgegeven contract op een opgegeven adres.

Resolve(Type, Uri, MetadataExchangeClientMode)

Hiermee wordt een metagegevensadres omgezet in de ServiceEndpoint objecten voor het opgegeven contract met behulp van het opgegeven adres en de overdrachtsmodus.

Van toepassing op