将浮点值转换为字符串

时间:2011-05-16 11:28:16

标签: c# string double

我有这样的房产:

 public float Lat{
        get {
            float lat;
            if (!float.TryParse(hdnLat.Value, out lat))  
            {
                throw new NotImplementedException();
            }

            return lat;
        }
        set { 
            hdnLat.Value = value;  // Line 43
        }
    }

我从谷歌地图获得了纬度和经度,我从两个asp.net隐藏区获得了坐标。

<asp:HiddenField ID="hdnLat" runat="server" />
<asp:HiddenField ID="hdnLng" runat="server" />

我将我的纬度和经度存储在我的数据库中,因此我必须将其转换为浮动权利吗?

如何将我的坐标转换为正确的格式?

Visual Studio给我这个错误:

  

无法隐式转换类型double   string Line 43

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:8)

由于hdnLat.Value的类型为string,因此当您为其指定时,您指定的项目也必须属于string类型。因此,如果您要分配value,则必须将其转换为类似string类型的项目。你可以这样做:

hdnLat.Value = value.ToString();

这正是错误消息“无法将double类型隐式转换为字符串”正试图告诉您。您应该将此消息读作“我看到您正在尝试使用我期望字符串的双精度。我试图找出如何转换它,但我不能。你能明确地告诉我如何转换它吗?”