c# 更改表格字段
来源:互联网 发布:女生 投行 知乎 编辑:程序博客网 时间:2024/06/03 19:26
在实际情况中为了减少数据库的压力和提高性能会将一些字段的内容在数据库以代码的形式存储,而现实到用户界面的时候就需要用户能看懂的形式代替,这样你会发现表格字段的数据类型有改变,简单的更改后台返回的json串显然是不行的。怎么办呢?
显然表格的结果需要改变,在c#里提供了Clone的方法,我现在的思路是把表格字段的数据结构通过Clone以及更新必要字段的数据类型来实现。
/// <summary> /// 将修改表的字段的类型并赋值 /// </summary> /// <param name="dt">需要转换的表</param> /// <returns>转换后的表</returns> private DataTable UpdateDateTable(DataTable dt) { DataTable dtResult = new DataTable(); //克隆表结构 dtResult = dt.Clone(); foreach (DataColumn col in dtResult.Columns) { if (col.ColumnName == "event_level") { //修改列类型 col.DataType = typeof(String); } if (col.ColumnName == "event_flag") { //修改列类型 col.DataType = typeof(String); } if (col.ColumnName == "event_confirm_flag") { //修改列类型 col.DataType = typeof(String); } } foreach (DataRow row in dt.Rows) { DataRow newrow = dtResult.NewRow(); newrow["id"] = row["id"]; newrow["event_name"] = row["event_name"]; //修改事件级别记录值 int eventLevels = int.Parse(row["event_level"].ToString()); switch (eventLevels) { case 1: newrow["event_level"] = "提示"; break; case 2: newrow["event_level"] = "警告"; break; case 3: newrow["event_level"] = "次要"; break; case 4: newrow["event_level"] = "重要"; break; case 5: newrow["event_level"] = "紧急"; break; } newrow["event_trigger_time"] = row["event_trigger_time"]; newrow["event_alarm_trigger_value"] = row["event_alarm_trigger_value"]; newrow["event_resume_time"] = row["event_resume_time"]; newrow["event_resume_trigger_value"] = row["event_resume_trigger_value"]; //修改事件状态记录值 int eventflag = int.Parse(row["event_flag"].ToString()); switch (eventflag) { case 1: newrow["event_flag"] = "告警"; break; case 2: newrow["event_flag"] = "恢复"; break; } int confirmflag = int.Parse(row["event_confirm_flag"].ToString()); switch (confirmflag) { case 0: newrow["event_confirm_flag"] = "未确认"; break; case 1: newrow["event_confirm_flag"] = "已确认"; break; } newrow["event_confim_time"] = row["event_confim_time"]; newrow["event_confimer"] = row["event_confimer"]; dtResult.Rows.Add(newrow); } return dtResult; }通过新旧表的替换,很容易将友好的数据显示给用户。
工作中遇到的问题认真的去做,发现会有很多新的尝试和挑战,所以每天都有进步。
0 0
- c# 更改表格字段
- c#提取Excel表格单个字段的方法
- sqlsever 更改字段名
- 更改数据库字段名称
- mysql 更改字段类型
- Postgresql更改字段类型
- Access更改字段长度
- MySQL更改字段名
- js表格字段排序
- js表格字段排序
- 表格字段定义
- 表格字段合并定义
- 输出表格字段信息
- blur --后台点击更改表格;
- C# 字段
- C#字段
- C# 字段
- oracle更改字段长度,添加字段
- 如何编程实现让打印机打印测试页
- TOMCAT内存溢出问题Exception in thread ""http-bio-8080"-exec-6等等
- (NO.00003)iOS游戏简单的机器人投射游戏成形记(二)
- matlab—元胞数组cell
- Could not create the view: An unexpected exception was thrown.
- c# 更改表格字段
- 4步教你开发风控评分模型
- 九九乘法表(javascript)
- 归并排序初步
- (NO.00003)iOS游戏简单的机器人投射游戏成形记(三)
- Android Studio报错:Unable to start the daemon process: could not reserve enough space for object heap
- 关于工作习惯的思考
- SAP方丈-写给新手的SAP成本核算流程
- TCP短连接