.net项目中,使用cshtml 做报表时,前端页面需要的数据格式是DataTable格式,

遂在后台方法将调用接口获取的 List集合数据转换为想要的DataTable 并指定列名
       

        /// <summary>    
        /// 将List集合类转换成DataTable    
        /// </summary>    
        /// <param name="list">集合</param>    
        /// <returns></returns>    
        public  DataTable ToDataTableTow(List<StockModel> list)
        {
            //创建一个DataTable
            DataTable dt = GetDataTableName();
            if (list.Count > 0)
            {
                foreach (StockModel stock in list)
                {
                    // 创建一个新行
                    DataRow newRow = dt.NewRow();

                    // 设置新行的列值
                    newRow["店铺名称"] = stock.zcompanyname; 
                    newRow["供应商名称"] = stock.suppliername;
                    newRow["库存地点"] = stock.stockunitname;
                    newRow["单据编号"] = stock.djno;
                    newRow["品牌"] = stock.brandname;
                    newRow["型号"] = stock.sortname;
                    newRow["颜色"] = stock.colorname;
                    newRow["物料号"] = stock.matnr;
                    newRow["物料名称"] = stock.matnrname;
                    newRow["批次号"] = stock.zcmsno;
                    newRow["单价"] = stock.dc_price;
                    newRow["币别"] = stock.currency;
                    newRow["库存数量"] = stock.kcqty;
                    newRow["占用库存"] = stock.occupyqty;
                    newRow["可用库存"] = stock.cansaleqty;
                    newRow["库龄"] = stock.storageage;

                    // 将新行添加到DataTable中
                    dt.Rows.Add(newRow);
                }
            }
            return dt;
        }

        //创建一个DataTable  ,并指定列名      
        DataTable GetDataTableName()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("店铺名称");
            dt.Columns.Add("供应商名称");
            dt.Columns.Add("库存地点");
            dt.Columns.Add("单据编号");
            dt.Columns.Add("品牌");
            dt.Columns.Add("型号");
            dt.Columns.Add("颜色");
            dt.Columns.Add("物料号");
            dt.Columns.Add("物料名称");
            dt.Columns.Add("批次号");
            dt.Columns.Add("单价");
            dt.Columns.Add("币别");
            dt.Columns.Add("库存数量");
            dt.Columns.Add("占用库存");
            dt.Columns.Add("可用库存");
            dt.Columns.Add("库龄");
            dt.AcceptChanges();
            return dt;
        }

更多推荐