修改dataset列名

之前有篇写构造json的文章,首先将数据库中的数据读出,封装到datatable中,然后用一个写好的DataToJson函数获取datatable中每个元素。在这个方法里,比较困扰我的是,难以修改列名,因为列名是自动获取,今天修改之后,代码如下

 string DataToJson(DataTable dt, int count)
            {
                StringBuilder sbjson = new StringBuilder();
                sbjson.Append("{");

                sbjson.Append("\"code\":" + 0 + "," + "\"msg\":" + "1" + "," + "\"count\":" + count + ",\"data\":[");

                if (dt != null)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        if (i > 0)
                        {
                            sbjson.Append(",");
                            sbjson.Append("{");
                            foreach (DataColumn dc in dt.Columns)
                            {
                                if (dc.ColumnName == "一月计划用水量"|| dc.ColumnName == "二月计划用水量" || dc.ColumnName == "三月计划用水量" || dc.ColumnName == "四月计划用水量" || dc.ColumnName == "五月计划用水量" || dc.ColumnName == "六月计划用水量" || dc.ColumnName == "七月计划用水量" || dc.ColumnName == "八月计划用水量" || dc.ColumnName == "九月计划用水量" || dc.ColumnName == "十月计划用水量" || dc.ColumnName == "十一月计划用水量" || dc.ColumnName == "十二月计划用水量")
                                {
                                    dc.ColumnName = "月计划用水量";
                                }
                                if(dc.ColumnName=="差值一"|| dc.ColumnName == "差值二" || dc.ColumnName == "差值三" || dc.ColumnName == "差值四" || dc.ColumnName == "差值五" || dc.ColumnName == "差值六" || dc.ColumnName == "差值七" || dc.ColumnName == "差值八" || dc.ColumnName == "差值九" || dc.ColumnName == "差值十" || dc.ColumnName == "差值十一" || dc.ColumnName == "差值十二")

                                {
                                    dc.ColumnName = "超额用水量";//可以将列名改变
                                }

                                if (dt.Columns.IndexOf(dc) > 0)
                                {
                                    sbjson.Append(",");

                                    sbjson.Append("\"" + dc.ColumnName + "\":\"" + dt.Rows[i][dc.ColumnName].ToString().Trim() + "\"");
                                }
                                else
                                {

                                    sbjson.Append("\"" + dc.ColumnName + "\":\"" + dt.Rows[i][dc.ColumnName].ToString().Trim() + "\"");


                                }
                            }
                            sbjson.Append("}");
                        }
                        else
                        {

                            sbjson.Append("{");
                            foreach (DataColumn dc in dt.Columns)
                            {
                                if (dc.ColumnName == "一月计划用水量" || dc.ColumnName == "二月计划用水量" || dc.ColumnName == "三月计划用水量" || dc.ColumnName == "四月计划用水量" || dc.ColumnName == "五月计划用水量" || dc.ColumnName == "六月计划用水量" || dc.ColumnName == "七月计划用水量" || dc.ColumnName == "八月计划用水量" || dc.ColumnName == "九月计划用水量" || dc.ColumnName == "十月计划用水量" || dc.ColumnName == "十一月计划用水量" || dc.ColumnName == "十二月计划用水量")
                                {
                                    dc.ColumnName = "月计划用水量";
                                }
                                if (dc.ColumnName == "差值一" || dc.ColumnName == "差值二" || dc.ColumnName == "差值三" || dc.ColumnName == "差值四" || dc.ColumnName == "差值五" || dc.ColumnName == "差值六" || dc.ColumnName == "差值七" || dc.ColumnName == "差值八" || dc.ColumnName == "差值九" || dc.ColumnName == "差值十" || dc.ColumnName == "差值十一" || dc.ColumnName == "差值十二")

                                {
                                    dc.ColumnName = "超额用水量";//可以将列名改变
                                }
                                if (dt.Columns.IndexOf(dc) > 0)
                                {

                                    sbjson.Append(",");
                                    sbjson.Append("\"" + dc.ColumnName + "\":\"" + dt.Rows[i][dc.ColumnName].ToString().Trim() + "\"");

                                }
                                else
                                {

                                    sbjson.Append("\"" + dc.ColumnName + "\":\"" + dt.Rows[i][dc.ColumnName].ToString().Trim() + "\"");

                                }
                            }
                            sbjson.Append("}");
                        }
                    }
                }
                sbjson.Append("]}");
                return sbjson.ToString();
            }

在遍历获取一行数据中的每个元素时,加以判断,如果该列名等于“”,就改为"******",之后再进行json格式的构造。关键代码在于:

 if(dc.ColumnName==" ")

                                {
                                    dc.ColumnName = "超额用水量";//可以将列名改变
                                }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值