从数据库返回时CAST无效

本文关键字:CAST 无效 返回 数据库 | 更新日期: 2023-09-27 17:54:15

我正在运行查询并从该查询返回结果集。一切都很好,除了来自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; }
}

从数据库返回时CAST无效

使用了错误的数据类型:

UMCUS = reader.GetDecimal(1)

允许程序正确返回。

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)
    });
}
类:

public class getCustomerInfoModel
{
    public string UMENT { get; set; }
    public Decimal UMCUS { get; set; }
    public string UMNAM { get; set; }
    public string UMSLC { get; set; }
}