MetadataResolver Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengambil dan mengimpor metadata sebagai ServiceEndpoint objek.
public ref class MetadataResolver abstract sealed
public static class MetadataResolver
type MetadataResolver = class
Public Class MetadataResolver
- Warisan
-
MetadataResolver
Contoh
Contoh kode berikut menunjukkan penggunaan MetadataResolver kelas untuk mengembalikan metadata sebagai kumpulan ServiceEndpoint objek yang kemudian digunakan untuk menyambungkan ke instans layanan.
// 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();
}
}
Contoh kode berikut menunjukkan penggunaan MetadataResolver metadata untuk mengunduh dan mengembalikan sebagai kumpulan ServiceEndpoint objek menggunakan permintaan HTTP GET daripada 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();
}
}
Keterangan
MetadataResolver Gunakan kelas untuk mengimpor titik akhir dengan cepat untuk layanan dari metadata. Kelas ini mengunduh dan mengonversi metadata menjadi ServiceEndpoint objek. Untuk mengunduh metadata dan memproses informasi tersebut sebagai System.ServiceModel.Description.MetadataSet, lihat System.ServiceModel.Description.MetadataExchangeClient.
Metode
| Nama | Deskripsi |
|---|---|
| BeginResolve(IEnumerable<ContractDescription>, EndpointAddress, AsyncCallback, Object) |
Memulai panggilan asinkron yang menyelesaikan alamat metadata ke dalam ServiceEndpoint objek untuk kontrak yang ditentukan, menggunakan alamat yang ditentukan dan status asinkron dan delegasi. |
| BeginResolve(IEnumerable<ContractDescription>, EndpointAddress, MetadataExchangeClient, AsyncCallback, Object) |
Memulai panggilan asinkron yang menyelesaikan alamat metadata ke dalam ServiceEndpoint objek untuk kontrak yang ditentukan, menggunakan alamat yang ditentukan, MetadataExchangeClient, status asinkron dan delegasi. |
| BeginResolve(IEnumerable<ContractDescription>, Uri, MetadataExchangeClientMode, AsyncCallback, Object) |
Memulai panggilan asinkron yang menyelesaikan alamat metadata ke dalam ServiceEndpoint objek untuk kontrak yang ditentukan, menggunakan alamat, nilai, MetadataExchangeClientMode status asinkron, dan delegasi yang ditentukan. |
| BeginResolve(IEnumerable<ContractDescription>, Uri, MetadataExchangeClientMode, MetadataExchangeClient, AsyncCallback, Object) |
Memulai panggilan asinkron yang menyelesaikan alamat metadata ke dalam ServiceEndpoint objek untuk kontrak yang ditentukan, menggunakan alamat yang ditentukan, MetadataExchangeClient, MetadataExchangeClientMode, status asinkron, dan delegasi. |
| BeginResolve(Type, EndpointAddress, AsyncCallback, Object) |
Memulai panggilan asinkron yang menyelesaikan alamat metadata ke dalam ServiceEndpoint objek untuk kontrak yang ditentukan menggunakan alamat yang ditentukan dan status asinkron dan delegasi. |
| BeginResolve(Type, Uri, MetadataExchangeClientMode, AsyncCallback, Object) |
Memulai panggilan asinkron yang menyelesaikan alamat metadata ke dalam ServiceEndpoint objek untuk kontrak yang ditentukan, menggunakan alamat yang ditentukan, MetadataExchangeClientMode, status asinkron dan delegasi. |
| EndResolve(IAsyncResult) |
Menyelesaikan panggilan asinkron untuk menyelesaikan metadata ke dalam kumpulan titik akhir. |
| Resolve(IEnumerable<ContractDescription>, EndpointAddress, MetadataExchangeClient) |
Menyelesaikan alamat metadata ke ServiceEndpoint dalam objek untuk kontrak yang ditentukan menggunakan alamat metadata yang ditentukan dan MetadataExchangeClient. |
| Resolve(IEnumerable<ContractDescription>, EndpointAddress) |
Menyelesaikan alamat metadata ke dalam ServiceEndpoint objek untuk kontrak yang ditentukan menggunakan alamat metadata yang ditentukan. |
| Resolve(IEnumerable<ContractDescription>, Uri, MetadataExchangeClientMode, MetadataExchangeClient) |
Menyelesaikan alamat metadata ke dalam ServiceEndpoint objek untuk kontrak yang ditentukan menggunakan alamat, mode transfer, dan klien transfer yang ditentukan. |
| Resolve(IEnumerable<ContractDescription>, Uri, MetadataExchangeClientMode) |
Menyelesaikan alamat metadata ke ServiceEndpoint dalam objek untuk kontrak yang ditentukan menggunakan alamat dan mode transfer yang ditentukan. |
| Resolve(Type, EndpointAddress) |
Mengunduh dan menyelesaikan alamat metadata ke dalam kumpulan ServiceEndpoint objek untuk kontrak tertentu pada alamat tertentu. |
| Resolve(Type, Uri, MetadataExchangeClientMode) |
Menyelesaikan alamat metadata ke ServiceEndpoint dalam objek untuk kontrak yang ditentukan menggunakan alamat dan mode transfer yang ditentukan. |