嘿,

我需要对我的应用程序不断遇到的异常有所帮助,

这段代码触发了异常

Map mapView = new Map()
        {
            CredentialsProvider = new ApplicationIdCredentialsProvider("OurKey"),
            Margin = new Thickness(6.0),
            IsEnabled = false,
            Center = new GeoCoordinate(Convert.ToDouble(newEvent.EventLat), Convert.ToDouble(newEvent.EventLon)),
            ZoomLevel = 15
        };


我在ArgumentOutOfRangeException件上得到的Center = new GeoCoordinate包含以下信息


  参数的值必须在-90.0到90.0之间。
  参数名称:纬度


但是newEvent.EventLat是“ 51.4430624”,所以对我完全有效吗?

现在,更奇怪的是,仅当我在模拟器上启动诺基亚Lumia 800时,才发生这种情况。

因此,我真的需要这一方面的帮助,我无法在互联网上找到任何内容。

最佳答案

但是newEvent.EventLat是“ 51.4430624”,所以对我完全有效吗?


除非电话上的小数点分隔符为,
区域设置是在模拟器和真实物体之间犯错的典型现象。

考虑

//Convert.ToDouble(newEvent.EventLat)
double.Parse(newEvent.EventLat, CultureInfo.InvariantCulture)

10-08 16:51