在类似的查询中:获取System.InvalidCastException或不获取

问题描述 投票:0回答:1

我想从DB获取一个十进制值到一个变量。我越来越

System.InvalidCastException:指定的强制转换无效

来自此查询:

var result = Connection.Places.First(d => d.ID == 6).Rate;

但是,我没有从下面的方法得到任何错误:

var result = GetRate(6);
public decimal GetRate(int id)
        {
            return (from d in conn.Places
                    where d.ID == id
                    select d.Rate).First();
        }

我哪里做错了?

地方表设计在这里:

enter image description here

c# asp.net linq lambda linq-to-sql
1个回答
0
投票

InvalidCastException说有一个convert问题。这可能是因为GetRate(int id)无法将结果转换为decimal数据类型。首先尝试检索结果,然后将其转换为decimal数据类型,然后返回结果

© www.soinside.com 2019 - 2024. All rights reserved.