MetadataResolver Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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. |