不确定为什么我收到此错误,因为转换其他列的工作正常。
基本上我有一个SELECT语句可以播放int / string / float。以下代码仅在float上抛出上述错误,但在Database / ViewModel中,它们都是Float类型。
视图模型
public float personalAmount { get; set; }
REPOSITORY
string selectQuery = "SELECT OC.[id], OC.[number_id], ONU.[mobile_number], OC.[personal_amount], OC.[start_date], OC.[end_date] " +
"FROM export OC " +
"INNER JOIN numbers ONU ON OC.number_id = ONU.number_id " +
"WHERE OC.[person_id] = " + id;
SqlCommand myCommand = new SqlCommand(selectQuery);
myCommand.Connection = myConnection;
myConnection.Open();
SqlDataReader dataReader = myCommand.ExecuteReader();
if (!dataReader.HasRows) return null;
var newData = new List<List>();
while (dataReader.Read())
{
List list = new List();
list.id = (int)dataReader["id"];
list.mobileNumber = dataReader["mobile_number"].ToString();
list.personalAmount = (float) dataReader["personal_amount"];
list.startDate = (DateTime)dataReader["start_date"];
list.endDate = (DateTime)dataReader["end_date"];
newData.Add(list);
}
dataReader.Close();
提前感谢您的帮助: - )
克莱尔
答案 0 :(得分:3)
您是否尝试过Float.Parse(dataReader [“personal_amount”]。ToString())?
这不是一种很酷的解决方法,但它可能有用。