本帖最后由 qq_17076445 于 2014-09-04 01:11:23 编辑

解决方案 »

  1.   

    在model中进行操作啊,这个model不是实体类的model,是mvc中的model层,这个层本身就是进行一些数据操作的
      

  2.   

    SQL 语句取出来。存进datatable,然后datatable转成实体!        /// <summary>  
            /// Datatable 转 实体类        
        /// </summary>  
            /// <typeparam name="T">实体类</typeparam>
            /// <param name="dt">Datatable</param>
            /// <returns></returns>
            public static FList<T> DtToModel<T>(DataTable dt) where T : new()
            {
                if (dt == null || dt.Rows.Count == 0)
                {
                    return null;
                }
                FList<T> modelList = new FList<T>();
                foreach (DataRow dr in dt.Rows)
                {
                    //T model = (T)Activator.CreateInstance(typeof(T));  
                    T model = new T();
                    for (int i = 0; i < dr.Table.Columns.Count; i++)
                    {
                        PropertyInfo propertyInfo = model.GetType().GetProperty(dr.Table.Columns[i].ColumnName);
                        if (propertyInfo != null && dr[i] != DBNull.Value)
                            propertyInfo.SetValue(model, dr[i], null);
                    }                modelList.Add(model);
                }
                return modelList;
            }