Обнаружение службы WCF с метаданными - PullRequest
3 голосов
/ 09 мая 2011

Привет! Я ищу пример WCF, который включает обнаружение службы и способ обнаружения / обнаружения типа привязки, я думаю, что это можно сделать с помощью обмена метаданными.

1 Ответ

3 голосов
/ 13 мая 2011

Я только что нашел правильный ответ, вот шаги для выполнения задачи:

  1. Добавить конечную точку мекс.
  2. Добавить поведение обмена метаданными.
  3. в клиентском приложении используйте обнаружение с критериями метаданных.

обнаружение с критериями метаданных

DiscoveryClient discoveryClient = new DiscoveryClient(new UdpDiscoveryEndpoint());
FindCriteria findCriteria =   FindCriteria.CreateMetadataExchangeEndpointCriteria    (ContractType);
    findCriteria.Duration = TimeSpan.FromSeconds(15);
    findCriteria.MaxResults = 1;// MaxResults;

    FindResponse result = discoveryClient.Find(findCriteria);
    discoveryClient.Close();


    ServiceEndpointCollection eps = MetadataResolver.Resolve(ContractType, result.Endpoints[0].Address);
    return eps[0].Binding;
...