if (dt.Rows.Count == 0)
{
行 58: dt.Rows.Clear(); 行 59: dt.Rows.Add(dt.NewRow()); 行 60: gridView.DataSource = dt; 行 61: gridView.DataBind();
}
[NoNullAllowedException: 列“ID”不允许 nulls。]
没有数据,给其他的提示,或者DataRow在这里DataColumn给ID赋值
怎么说了这里,我要是这么做了,那我就达不到我在每个页面的代码复用,因为不一定每个表都有ID。其实我想实现的效果是,在没有数据的情况下gridview绑定的数据不光要有表头还得要有一行没数据的显示
所有Null异常!所有的!全部!都是初始化异常!给你的“ID”赋值吧,别把值传丢了。
这个要得就是空值????汗
@takeurhand: 这个一看就是不对的先不说你的方法报错不,我的前提条件已经给了 if (dt.Rows.Count == 0)这个判断了,你觉得再那么去做一次有意义吗?
@IT_小子:
dt.Rows.Add(dt.NewRow()==null?"":dt.NewRow()); dt.Rows.Add(dt.NewRow()==null?0:dt.NewRow());
你dt本来就是null,你还newRow()干嘛了
同上 请看一楼
@IT_小子: 你就是说可能为null,可能不是null是吧,那你就这么写
if dt!=null dt.Rows.Add(dt.NewRow());
你要想有表头,你的数据查询,即给dt赋值的语句就不要直接绑定了,用List<>填充,没数据,它也不是null,也有标题
@风醉: 但是 还要有 未查找到任何数据了。这样可以得到吗?????你觉得
@IT_小子: 有没有查到数据,这可以判断吧,你是拿什么方法查数据的,数据结果集是一个表,你觉得空表和空数据能一样嘛,你要是直接填充有个表头,你要是数据直接类型转换,可能就是个空,这个你自己可以依据业务控制的
@风醉:
项目名称: |
__________________________________________________________________________________
项目名称 | 123 | 312 | 321 | 123 | 132 | 123 | 21 | 3121223 | 123 | 312 |
---|---|---|---|---|---|---|---|---|---|---|
未查找到相关记录 |
@IT_小子: 明白你的意思了,就是说你想查不到,就对其显示格“未查找到相关记录”,最简单效果比较好的,可以用DX控件,默认绑定空的就会显示你想要的提示,格式排列很完整
自定义的话,感觉排版这块可能没那么好
@风醉: 哦 这个其实我已经实现了但在sqlserver可能由于主键问题暂时没有解决
@IT_小子: 我觉得你的问题是对SQL那边查过来的数据处理上面,可能用的是标准的查询方法,可以试着了解转换成其他数据类型
你可以设置一个0