やあ、
WAS を使用して TCP 経由で通信する IIS7 でホストされている WCF サービスがあります。サービス側では、呼び出されたサービス操作をログに記録するために IParameterInspector を実装しましたが、クライアントの IP/名前も必要です。
私はこれを試しました:
OperationContext.Current.IncomingMessageProperties[RemoteEndpointMessageProperty.Name].Address
しかし、それは常に "::1" を返しますか? 私が使用する場合:
Dns.GetHostEntry(messageProperty.Address).HostName.Split('.').LastOrDefault()
名前は常にローカルであり、これはクライアントがサービスとは異なるコンピューター上にある場合でもですか?
よろしくお願いします
編集1:私が正しく読んだ場合、IPを取得することはできないので、問題は、クライアントを指定する他の方法があるかどうか、おそらく何らかのGUIDか、それとも私が使用すべきセッションIDだけですか?