对象不能从 DBNull 转换为其他类型。ASP.NET 5

三层架构第二层写方法:selectsum(price)fromtable1wherename=textbox1.text;第三层调用方法后提示对象不能从DBNull转换为... 三层架构第二层写方法:select sum(price) from table1 where name=textbox1.text;

第三层调用方法后提示对象不能从DBNull转换为其他类型,数据库里有数据,求大神解答~~~~
展开
 我来答
youbl
2013-11-03 · TA获得超过2510个赞
知道大有可为答主
回答量:1844
采纳率:62%
帮助的人:1668万
展开全部
从错误结果来看,就是你的sql没读取到数据,导致返回DBNull了,

你首先把sql打印出来,扔数据库里查询一下看有没有数据
追问
咋么打印??数据库里有数据~~已经插入~~~
追答
你在代码里增加:
string sql = "select sum(price) from table1 where name='"+textbox1.text+"'";
Response.Write(sql);

然后把页面的sql放到数据库去执行看有没有记录啊
小胖走两步
2013-11-03 · 超过50用户采纳过TA的回答
知道小有建树答主
回答量:190
采纳率:0%
帮助的人:114万
展开全部
应该是你的price或者name为dbnull吧
所以,你可以做一个操作,在sql语句加上一个函数isnull()
如:select sum(isnull(price,0)) from table1 where name=textbox1.text
这样子相信没问题的了
追问
不好用~~~
追答
呵呵
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhang399401
2013-11-03 · TA获得超过702个赞
知道小有建树答主
回答量:1347
采纳率:0%
帮助的人:940万
展开全部
你的price在数据库中是什么类型的
追问
int 型
追答
请把报错的代码贴出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式