转换为值类型'System.Single'失败,因为存储过程的实现值为null

时间:2017-09-11 20:35:23

标签: asp.net-mvc linq asp.net-mvc-4

我的存储过程返回以下数据:

  public class EditSensorModel 
    {
        public List<EditSensorModel> editsensor;

        public Int64 SensorNodeUUID { get; set; }
        public int Type { get; set; }
        public float val0 { get; set; }
        public float val1 { get; set; }
        public float val2 { get; set; }
}

我有一个模特:

List<EditSensorModel> vendlist = new List<EditSensorModel>();
        var vnlist = entities.Database.SqlQuery<EditSensorModel>("exec usp_getsensornode @userid",
            new SqlParameter("@userid", Convert.ToInt32(Session["Userid"]))
     ).ToList();

                    foreach (var item in vnlist)
                    {
                    EditSensorModel temp = new EditSensorModel();
                    temp.SensorNodeUUID = item.SensorNodeUUID;
                    temp.Type = item.Type;
                    temp.val0 = item.val0 ;
                    temp.val1 = item.val1 ;
                    temp.val2 = item.val2 ;
                    vendlist.Add(temp);
                    }

在控制器中:

{{1}}

在控制器中,我将数据存储到变量vnlist中时出错。 我面临的错误是:转换为值类型'System.Single'失败,因为具体化值为null。 有谁知道如何解决这个错误

1 个答案:

答案 0 :(得分:1)

使用浮动?在你的模型中。

float? val0;
float? val1;
float? val2;