从数据库返回时 CAST 无效
Invalid CAST When Returning From Database
我正在 运行 查询并返回该查询的结果集。除了来自 AS400 的客户编号数据类型表示无论我在模型中使用哪种数据类型,它都无法进行 CAST 之外,一切都很好。我确定我缺少一些简单的东西,但 12 小时足够长了。我可以验证 as400 中的客户编号字段是一个数值,但是我无法确定它在 as400 中的确切值类型。
这是我正在填充的列表。
while (reader.Read())
{
//Lets add the data to our list we created earlier...
customerList.Add(new getCustomerInfoModel
{
// What returned values do we want to list...
UMENT = reader.GetString(0),
UMCUS = reader.GetInt32(1),
UMNAM = reader.GetString(2),
UMSLC = reader.GetString(3)
});
}
还有我的模特...
public class getCustomerInfoModel
{
public string UMENT { get; set; }
public int UMCUS { get; set; }
public string UMNAM { get; set; }
public string UMSLC { get; set; }
}
使用了错误的数据类型:
UMCUS = reader.GetDecimal(1)
这允许程序正确地return。
while (reader.Read())
{
//Lets add the data to our list we created earlier...
customerList.Add(new getCustomerInfoModel
{
// What returned values do we want to list...
UMENT = reader.GetString(0),
UMCUS = reader.GetDecimal(1),
UMNAM = reader.GetString(2),
UMSLC = reader.GetString(3)
});
}
Class:
public class getCustomerInfoModel
{
public string UMENT { get; set; }
public Decimal UMCUS { get; set; }
public string UMNAM { get; set; }
public string UMSLC { get; set; }
}
我正在 运行 查询并返回该查询的结果集。除了来自 AS400 的客户编号数据类型表示无论我在模型中使用哪种数据类型,它都无法进行 CAST 之外,一切都很好。我确定我缺少一些简单的东西,但 12 小时足够长了。我可以验证 as400 中的客户编号字段是一个数值,但是我无法确定它在 as400 中的确切值类型。
这是我正在填充的列表。
while (reader.Read())
{
//Lets add the data to our list we created earlier...
customerList.Add(new getCustomerInfoModel
{
// What returned values do we want to list...
UMENT = reader.GetString(0),
UMCUS = reader.GetInt32(1),
UMNAM = reader.GetString(2),
UMSLC = reader.GetString(3)
});
}
还有我的模特...
public class getCustomerInfoModel
{
public string UMENT { get; set; }
public int UMCUS { get; set; }
public string UMNAM { get; set; }
public string UMSLC { get; set; }
}
使用了错误的数据类型:
UMCUS = reader.GetDecimal(1)
这允许程序正确地return。
while (reader.Read())
{
//Lets add the data to our list we created earlier...
customerList.Add(new getCustomerInfoModel
{
// What returned values do we want to list...
UMENT = reader.GetString(0),
UMCUS = reader.GetDecimal(1),
UMNAM = reader.GetString(2),
UMSLC = reader.GetString(3)
});
}
Class:
public class getCustomerInfoModel
{
public string UMENT { get; set; }
public Decimal UMCUS { get; set; }
public string UMNAM { get; set; }
public string UMSLC { get; set; }
}