У меня есть служба WCF, размещенная на веб-сайте. У меня есть многократные привязки на том же сайте. Каждый веб-сайт может вызывать службу WCF на другом сайте.
Из-за этого конечная точка, которую использует клиент, является динамическим адресом.
Q: Можно ли узнать, какой адрес использует вызывающий абонент, когда он достигает хоста?
Я ищу что-то похожее на следующее, не отправляя его в качестве параметра.
HttpContext.Current.Request.ServerVariables["SERVER_NAME"]
Пример клиента
// The endpoint being called is -
// http://www.helloworld.com/Services/EchoService.svc for example.
EchoServiceClient client = new EchoServiceClient("WSHttpBinding_IEchoService", GetEndpoint("EchoService"));
litResponse.Text = client.Echo();
client.Close();
Пример хоста
public class EchoService : IEchoService
{
public string Echo()
{
return "Echo: " + {something like WCF.Caller.EndPoint.Address};
}
}
Вывод похож на
Echo: http://www.helloworld.com