求下代码例子
sql读出来的时候加为空的判断揪心过了,你的空记录是指第一列没有数据吗?
select * from xxx where 第一列的列名称>''
如果无法修改sql,数据源改为DataView,可以使用RowFilter过滤
System.Data.DataTable dt;
//取数据填充dt的代码
System.Data.DataView dv = dt.DefaultView;
dv.RowFilter = "不能为空的列名称>''";
最好在数据源查询处就控制住,把不符合的数据过滤掉
sb.Append("<td>" + dr["Engineer_var_Name"] + "</td>");
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["模拟"].ToString(), "" + ftstart + "", "" + ftend + "", 0, 5, "501", 1, 3, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["基本"].ToString(), "" + ftstart + "", "" + ftend + "", 0, 5, "502", 1, 3, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["移动宽带"].ToString(), "" + ftstart + "", "" + ftend + "", 0, 3, "301,302", 1, 3, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["广电宽带"].ToString(), "" + ftstart + "", "" + ftend + "", 0, 5, "504", 1, 3, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["交互维修"].ToString(), "" + ftstart + "", "" + ftend + "", 0, 5, "503,505", 1, 3, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["移动宽带LAN安装"].ToString(), "" + ftstart + "", "" + ftend + "", 2, 2, "201,202", 1, 3, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + assembly("" + ftstart + "", "" + ftend + "", dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), 1, 2, 0, 2, 1, 1, dr["Engineer_int_ID"].ToString(), dr["广电宽带LAN安装"].ToString()) + "</td>"); //mazt
sb.Append("<td>" + assembly("" + ftstart + "", "" + ftend + "", dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), 1, 2, 0, 2, 1, 1, dr["Engineer_int_ID"].ToString(), dr["交互LAN"].ToString()) + "</td>"); //mazt
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["移动宽带EOC安装"].ToString(), "" + ftstart + "", "" + ftend + "", 1, 2, "201,202", 1, 3, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + assembly("" + ftstart + "", "" + ftend + "", dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), 1, 1, 0, 2, 1, 1, dr["Engineer_int_ID"].ToString(), dr["广电宽带EOC安装"].ToString()) + "</td>"); //mazt
sb.Append("<td>" + assembly("" + ftstart + "", "" + ftend + "", dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), 1, 1, 0, 2, 1, 1, dr["Engineer_int_ID"].ToString(), dr["交互EOC"].ToString()) + "</td>"); //mazt
sb.Append("<td>" + dr["光纤入户"].ToString() + "</td>"); //mazt
sb.Append("<td>" + assembly("" + ftstart + "", "" + ftend + "", dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), 1, 0, 0, 2, 1, 1, dr["Engineer_int_ID"].ToString(), dr["基本型安装"].ToString()) + "</td>"); //mazt
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["开机"].ToString(), "" + ftstart + "", "" + ftend + "", 0, 1, "101", 1, 0, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["销户"].ToString(), "" + ftstart + "", "" + ftend + "", 0, 1, "107", 1, 0, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["移动宽带拆机"].ToString(), "" + ftstart + "", "" + ftend + "", 0, 2, "203,204,210", 1, 3, dr["Engineer_int_ID"].ToString()) + "</td>");
sb.Append("<td>" + assembly("" + ftstart + "", "" + ftend + "", dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), 1, 0, 0, 2, 1, 1, dr["Engineer_int_ID"].ToString(), dr["交互拆机"].ToString()) + "</td>"); //mazt
sb.Append("<td>" + AssemblyHref(dr["WorkTicket_int_Dept1"].ToString(), dr["WorkTicket_int_Dept2"].ToString(), dr["WorkTicket_int_Dept3"].ToString(), dr["服务申告流"].ToString(), "" + ftstart + "", "" + ftend + "", 0, 6, "601,602,603,604,605,606", 0, 0, dr["Engineer_int_ID"].ToString()) + "</td>");
}
sb.Append("</tr>");
}
ResultData = sb.ToString();
this.GVData.DataSource = dt; //gridview数据绑定
this.GVData.DataBind();
为什么要这样拼接?这样的数据可以用一个JSON 搞一下 弄成一个对象封装好 就应该可以很容易解决你的问题了吧
gridview 也是基于 MVC设计的,你只能通过数据源进行控制,没有其它办法;