Ответ 1
Собственно, вопреки тому, что я думал - на самом деле довольно легко узнать, на какой конечной точке была вызвана услуга. В вашем методе службы добавьте следующие строки кода:
OperationContext oc = OperationContext.Current;
if(oc != null)
{
string wasCalledOn = oc.EndpointDispatcher.EndpointAddress.Uri.ToString();
}
Но, как я сказал: я бы использовал это очень мудро и "защитно" - не начинайте менять поведение службы на основе того, на какой конечной точке был вызван ваш метод - это будет очень плохой дизайн!
Я пробовал это с несколькими конечными точками SOAP - не на 100% уверен, как будет обрабатываться REST (но, скорее всего, это же или очень похоже) - попробуйте!
Но для ведения журнала это должно работать нормально!