尝试在设备上调试我的应用时,我遇到了一个奇怪的问题。
var url = "http://maps.googleapis.com/maps/api/geocode/xml?sensor=true&address=";
url += pin.Element("address").Value;
var address = XDocument.Load(url);
最后一行给了我这个错误:
System.Net.WebException: Error: NameResolutionFailure
at System.Net.HttpWebRequest.EndGetResponse (IAsyncResult asyncResult) [0x00065] in /Developer/MonoTouch/Source/mono/mcs/class/System/System.Net/HttpWebRequest.cs:854
at System.Net.HttpWebRequest.GetResponse () [0x0000e] in /Developer/MonoTouch/Source/mono/mcs/class/System/System.Net/HttpWebRequest.cs:860
...
但它仅适用于实际设备。如果我在模拟器中运行它,它可以很好地工作。
答案 0 :(得分:5)
A NameResolutionFailure
表示DNS错误,可能是因为设备没有互联网访问权限,没有配置DNS或至少与Mac(运行模拟器)的配置不同(例如Wifi,3G)使用
您可以通过自己的设备访问互联网吗? (例如飞机模式)
如果是这样,您可以尝试在Safari的设备上访问http://maps.googleapis.com
站点,以查看您设备上配置的DNS服务器是否可以找到主机。