WCF 4 Rest Получение IP запроса? - PullRequest
21 голосов
/ 28 августа 2010

Эй, как вы получаете IP-адрес человека, который делает запрос, примерно так:

    [ServiceContract]    
    [AspNetCompatibilityRequirements(RequirementsMode = 
    AspNetCompatibilityRequirementsMode.Required)]    
    [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)]        
    public partial class UsersService
    {                          
        [WebInvoke(UriTemplate = "", Method = "PUT")]        
        public User AddNewUser(User newUser)
        {            
            // code goes here including GETTING AN IP??
        }

Спасибо!

1 Ответ

38 голосов
/ 28 августа 2010

Внутри AddNewUser используйте следующий фрагмент:

OperationContext context = OperationContext.Current;
MessageProperties messageProperties = context.IncomingMessageProperties;
RemoteEndpointMessageProperty endpointProperty =
  messageProperties[RemoteEndpointMessageProperty.Name] as RemoteEndpointMessageProperty;

Экземпляр RemoteEndpointMessageProperty предлагает свойства адреса и порта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...