日期:2014-05-17  浏览次数:20892 次

后台自动获取IP及当前城市
 public class Configs
    {
public static string GetCity() 
        {
            System.Net.IPAddress addr;
            // 获得拨号动态分配IP地址 
            addr = new System.Net.IPAddress(Dns.GetHostByName(Dns.GetHostName()).AddressList[1].Address);
            return addr.ToString(); 
        }
    }

这个方法报错:索引超出了数组界限
Ip 城市 地址

------解决方案--------------------
你单步调试看看AddressList的值,你要的值可能存在于AddressList[0]中
------解决方案--------------------
//直接一句话
public static string GetCity() 
{
        return new StreamReader(WebRequest.Create("http://iframe.ip138.com//ic.asp").GetResponse().GetResponseStream(),Encoding.Default).ReadToEnd();
}
------解决方案--------------------
AddressList[0]是你要的IP吗?
------解决方案--------------------
改成这样试试:
addr = new System.Net.IPAddress(Dns.GetHostByName(Dns.GetHostName()).AddressList[0]);