reader反射到Model

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Reflection;
using System.Data;
namespace ObjectMappingControls
{
   public  class CommonMapping
    {
       private static void ReaderToModel(IDataReader reader, object Model)
       {
           for (int i = 0; i < reader.FieldCount; i++)
           {
               System.Reflection.PropertyInfo propertyInfo = Model.GetType().GetProperty(reader.GetName(i));
               if (propertyInfo != null)
               {
                   if (reader.GetValue(i) != DBNull.Value)
                   {
                       if (propertyInfo.PropertyType.IsEnum)
                       {
                           propertyInfo.SetValue(Model, Enum.ToObject(propertyInfo.PropertyType, reader.GetValue(i)), null);
                       }
                       else
                       {
                           propertyInfo.SetValue(Model, reader.GetValue(i), null);
                       }
                   }
               }
           }
       }
      
    }
}

發佈了29 篇原創文章 · 獲贊 3 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章