C# 指定的强制转换在linq到sql中无效
我使用了以下代码:C# 指定的强制转换在linq到sql中无效,c#,linq,casting,C#,Linq,Casting,我使用了以下代码: int i = Int32.Parse(dataGridView2.Rows[rowID].Cells["ProfID"].Value.ToString()); var db = new bouDataDataContext(); var sel = db.Payments.Where(c => c.WTID == wtID && c.ProfID == i).Single(); 并且c.WTID在数据库中定义为整数,但我收到以下错误: 指定的强制转换
int i = Int32.Parse(dataGridView2.Rows[rowID].Cells["ProfID"].Value.ToString());
var db = new bouDataDataContext();
var sel = db.Payments.Where(c => c.WTID == wtID && c.ProfID == i).Single();
并且c.WTID
在数据库中定义为整数,但我收到以下错误:
指定的强制转换无效
我想这是因为你在做
c.ProfID == i
其中c.ProfID是字符串,i是整数,如果不是,则
var sel = db.Payments.Where(c => c.WTID == (int)wtID && c.ProfID == i).Single();
应该行,就是,,如果
wtID
可以强制转换为整数如果隐式强制转换不起作用-显式强制转换应该如何进行?支付类中定义的wtID和ProfID类型是什么?数据库中定义的wtID和ProfID为inttype@HadiKhodayari我问你在Payment类中定义的类型。我想错误在第三行?如果是这样,那么您的代码中没有理由会出现这种异常,是否还涉及到更多的代码?