无法将类型为“System.Int32”的对象强制转换为类型“System.String”。

数据库中的num字段为char类型,上面对应的也是char类型,这是怎么回事呢?求高手解答。代码如下:varresults=fromrindb.Wtablewherer.... 数据库中的num字段为char类型,上面对应的也是char类型,这是怎么回事呢?求高手解答。
代码如下:
var results = from r in db.Wtable
where r.num == TextBox.Text
select r;
foreach(Wtable r in results)
{
r.num = (txtnum.Text).ToString();
}
//db.Wtable.DeleteAllOnSubmit(results);
db.SubmitChanges();
展开
 我来答
Jarhf
2012-06-04 · TA获得超过1862个赞
知道小有建树答主
回答量:1736
采纳率:25%
帮助的人:1031万
展开全部
你的数据库 Wtable的 num字段是 int型,
但是代码中 表模型db.Wtable的 num字段是 string型,
对模型执行 从数据库更新
追问
我的num是char类型的,表中只有一个字段是int。但是,不是这个字段
追答
总之, Wtable的num字段和 映射到数据库中相应字段的 类型不匹配。   你看 你的 表模型 num字段是映射到 数据库中哪个字段?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tonsr
2012-06-04 · 超过38用户采纳过TA的回答
知道答主
回答量:144
采纳率:36%
帮助的人:52.9万
展开全部
String.Format(r);
这就强制转换了。。。
如果 num 是char型,感觉你这里也的改了
r.num=(txtnum.Text).ToString();
改成 r.num=Char.Parse(txtnum.Text);
试试。
追问
还是不行,这样直接通不过。。。
追答
那我就不知道了,等待高手
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
聊无无
2012-06-04 · TA获得超过1206个赞
知道小有建树答主
回答量:186
采纳率:0%
帮助的人:218万
展开全部
foreach(Wtable r in results)
问题出在这一句上,你的r和result类型不相符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友8f1dd04
2012-06-04
知道答主
回答量:66
采纳率:100%
帮助的人:23.1万
展开全部
foreach(var r in results)
{
r.num = txtnum.Text.ToString();
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
amoy_yang
2012-06-04 · 超过15用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:20.4万
展开全部
Wtable 改成 var
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式