.net c#将数据库数据对象转换为实体值对象

using System;数据库

using System.Data;ide

namespace Sunlib函数

{spa

    public static class DataHelper对象

    {ci

      //将数据库数据对象转换为实体值对象string

      //T:要转换的类型it

      //columnName:列名class

      //defValue:默认值date

      public static T ToValue<T>(DataRow dr, string columnName,T defValue)

      {

          if(dr.Table.Columns.Contains(columnName)==true)

           {

              if(dr[columnName]!=DBNull.Value&&string.IsNullOrWhiteSpace(dr[columnName].ToString())==false)

              {

                  return (T)(Convert.ChangeType(dr[columnName], typeof(T)))

              }

                //若是获取的字段值为空,就返回默认值

                 return defValue;

           }

           //调用函数ToValue

           public void Update()

            {

              //省略获取Table数据部分代码

              DataRow dr=ds.Tables[0].Rows[0];

              //获取数据表对应字段数值,ToValue默认值很关键,默认值能够决定获取的类型

              string MeterNo=ToValue(dr,"MeterNo","");//string类型默认值加双引号

              decimal Insideno=ToValue(dr,"Insideno",0m);//decimal默认值能够设为0m或者decimal类型值

              DateTime Reading=ToValue<DateTime>(dr,"Reading",DateTime.Now);//DateTime默认值能够设为当前值;只要默认值类型设置正确,<>能够去掉

            }          

      }

    }  

 

 

 

 

 

 

 

}

相关文章
相关标签/搜索