2009-08-06 6 views
2

Weiß jemand, wie bekomme ich die IP-Adresse des Clients mit RIA-Diensten. In WCF haben wir dafür OperationContext. Aber es funktioniert nicht mit RIA-Diensten.Get IP in WCF RIA-Dienste

+0

keine aswers, ich denke, es gibt jetzt einen Weg, es zu tun ... –

Antwort

3

Sie HttpContext.Current und APIs aus dieser heute verwenden können ...

1

Sie eine Invoke Operation in Ihrem DomainService können Sie die IP-Adresse wie folgt erhalten:

[Invoke] 
public string GetIPAddress() 
{ 
    return HttpContext.Current.Request.UserHostName; 
} 

Im Client Sie sollte schreiben:

YourContext context = new YourContext(); 

InvokeOperation invokeOperation = context.GetIPAddress(); 

invokeOperation.Completed += (s, args) => 
{ 
    if (invokeOperation.HasError) 
    { 
     MessageBox.Show("Error"); 
     invokeOperation.MarkErrorAsHandled(); 
    } 
    else 
    { 
     string ip = invokeOperation.Value.ToString(); 
    } 
};