浮动投射错误

时间:2013-05-31 12:45:03

标签: c# asp.net-mvc casting

我在我的数据库(餐桌)中定义了Latitude Float(24)和Longitude Float(24)。然后当我尝试使用它们时,代码在我的模型中显示如下

  public class JsonDinner
{
    public JsonDinner(){}
    public JsonDinner(Dinner dinner)
    {
        DinnerID = dinner.DinnerID;
        EventDate = dinner.EventDate.ToString();
        Latitude =  dinner.Latitude;
        Longitude = dinner.Longitude;
        Title = dinner.Title;
        Description = dinner.Description;
        RSVPCount = dinner.RSVPs.Count;
        Url = "dinner/details/" + dinner.DinnerID.ToString();
    }

        public int    DinnerID    {get; set;}
        public string EventDate   {get; set;}
        public float  Latitude    {get; set;}
        public float  Longitude   {get; set;}
        public string Title       {get; set;}
        public string Description {get; set;}
        public int    RSVPCount   {get; set;}
        public string Url         {get; set;}
}

它说

  

无法将'float'隐式转换为'float'。明确转换   存在(你错过了演员表)吗?

我做错了什么?我甚至没有使用任何铸件。

1 个答案:

答案 0 :(得分:1)

离开数据库,我相信float等同于C#double。所以,让他们:

Latitude =  (float)dinner.Latitude;
Longitude = (float)dinner.Longitude;

但要明白,你可能会降低精度,因此截断/舍入成为一种真正的可能性。