Программно установить идентичность на WCF EndpointAddress

Я использую следующую функцию для создания System.ServiceModel.EndpointAddress при подключении к службе WCF:

private static EndpointAddress GetEndPointAddress(string url, EndpointIdentity identity)
{
    Uri baseAddress = new Uri(url);
    EndpointAddress endpointAddress = new EndpointAddress(
        baseAddress,
        identity,
        new AddressHeaderCollection());
    return endpointAddress;
}

Мне нужно пройти в EndPointIdentity это соответствует следующей выдержке из моего web.config:

<identity>
  <dns value="Some Value" />
</identity>

Моя служба WCF использует сертификат X509, поэтому мне кажется, что моя личность должна иметь тип X509CertificateEndpointIdentity, Конструктор для этого требует, чтобы я передал сертификат... но я хочу передать ему значение DNS, как показано выше.

Кто-нибудь может подсказать, что не так с моим подходом?

1 ответ

Решение

На самом деле мне нужно было создать DnsEndpointIdentity следующим образом:

DnsEndpointIdentity identity = new DnsEndpointIdentity("Some value");
Другие вопросы по тегам