2012-02-28 13 views

答えて

6

GetHostEntryはもう少しエラーチェックを行い、またNetwork Tracing

のGetHostByName逆コンパイルをサポートように見えます:あなたがちょうどそれらの時代遅れのエラーで自分自身を見つける場合

public static IPHostEntry GetHostEntry(string hostNameOrAddress) 
{ 
    if (Logging.On) 
    Logging.Enter(Logging.Sockets, "DNS", "GetHostEntry", hostNameOrAddress); 
    Dns.s_DnsPermission.Demand(); 
    if (hostNameOrAddress == null) 
    throw new ArgumentNullException("hostNameOrAddress"); 
    IPAddress address; 
    IPHostEntry ipHostEntry; 
    if (IPAddress.TryParse(hostNameOrAddress, out address)) 
    { 
    if (((object) address).Equals((object) IPAddress.Any) || ((object) address).Equals((object) IPAddress.IPv6Any)) 
     throw new ArgumentException(SR.GetString("net_invalid_ip_addr"), "hostNameOrAddress"); 
    ipHostEntry = Dns.InternalGetHostByAddress(address, true); 
    } 
    else 
    ipHostEntry = Dns.InternalGetHostByName(hostNameOrAddress, true); 
    if (Logging.On) 
    Logging.Exit(Logging.Sockets, "DNS", "GetHostEntry", (object) ipHostEntry); 
    return ipHostEntry; 
} 
+0

public static IPHostEntry GetHostByName(string hostName) { if (hostName == null) throw new ArgumentNullException("hostName"); Dns.s_DnsPermission.Demand(); IPAddress address; if (IPAddress.TryParse(hostName, out address)) return Dns.GetUnresolveAnswer(address); else return Dns.InternalGetHostByName(hostName, false); } 

GetHostEntry逆コンパイルを私のように、コード上で 'GetHostByName()'を 'GetHostEntry()'で簡単に変更できます。 – Aryo

関連する問題