Liên quan đến How to get the IP address of a WCF remote endpoint?IPv4 địa chỉ từ xa trong WCF
Tôi đang sử dụng mã này để lấy địa chỉ IP từ xa khi một phương pháp workflow được gọi:
private static string GetRemoteIP()
{
var oc = OperationContext.Current;
var mp = oc.IncomingMessageProperties;
var remp = mp[RemoteEndpointMessageProperty.Name] as RemoteEndpointMessageProperty;
return remp == null ? "(unknown)" : remp.Address;
}
Tuy nhiên, địa chỉ tôi nhận được lại là ": : 1 ". Tôi không muốn địa chỉ IPv6, tôi muốn một địa chỉ IPv4 (127.0.0.1) - bất kỳ cách nào để buộc điều này?
IndexOf sẽ luôn trả về kết quả> = -1, do đó, 'if' sẽ luôn chọn nhánh khác 'else' –
Không nên là câu lệnh" if "đầu tiên được đọc: if (remoteIP.IndexOf (": ")> -1)? –