Exemplo n.º 1
0
        /// <summary>
        /// 将对象转换实体
        /// </summary>
        public Model.manager_role DataRowToModel(DataRow row)
        {
            Model.manager_role model = new Model.manager_role();
            if (row != null)
            {
                #region 主表信息======================
                //利用反射获得属性的所有公共属性
                Type modelType = model.GetType();
                for (int i = 0; i < row.Table.Columns.Count; i++)
                {
                    //查找实体是否存在列表相同的公共属性
                    PropertyInfo proInfo = modelType.GetProperty(row.Table.Columns[i].ColumnName);
                    if (proInfo != null && row[i] != DBNull.Value)
                    {
                        proInfo.SetValue(model, row[i], null);//用索引值设置属性值
                    }
                }
                #endregion

                #region 子表信息======================
                StringBuilder strSql1 = new StringBuilder();
                strSql1.Append("select * from " + databaseprefix + "manager_role_value");
                strSql1.Append(" where role_id=@role_id");
                SqlParameter[] parameters1 =
                {
                    new SqlParameter("@role_id", SqlDbType.Int, 4)
                };
                parameters1[0].Value = model.id;

                DataTable dt1 = DbHelperSQL.Query(strSql1.ToString(), parameters1).Tables[0];
                if (dt1.Rows.Count > 0)
                {
                    int rowsCount = dt1.Rows.Count;
                    List <Model.manager_role_value> models = new List <Model.manager_role_value>();
                    Model.manager_role_value        modelt;
                    for (int n = 0; n < rowsCount; n++)
                    {
                        modelt = new Model.manager_role_value();
                        Type modeltType = modelt.GetType();
                        for (int i = 0; i < dt1.Rows[n].Table.Columns.Count; i++)
                        {
                            PropertyInfo proInfo = modeltType.GetProperty(dt1.Rows[n].Table.Columns[i].ColumnName);
                            if (proInfo != null && dt1.Rows[n][i] != DBNull.Value)
                            {
                                proInfo.SetValue(modelt, dt1.Rows[n][i], null);
                            }
                        }
                        models.Add(modelt);
                    }
                    model.manager_role_values = models;
                }
                #endregion

                #region 权限信息======================
                StringBuilder strSql2 = new StringBuilder();
                strSql2.Append("select * from MS_userRolePemission");
                strSql2.Append(" where urp_roleid=@role_id");
                SqlParameter[] parameters2 =
                {
                    new SqlParameter("@role_id", SqlDbType.Int, 4)
                };
                parameters2[0].Value = model.id;

                DataTable dt2 = DbHelperSQL.Query(strSql2.ToString(), parameters2).Tables[0];
                if (dt2.Rows.Count > 0)
                {
                    int rowsCount = dt2.Rows.Count;
                    List <Model.userRolePemission> models = new List <Model.userRolePemission>();
                    Model.userRolePemission        modelt;
                    for (int n = 0; n < rowsCount; n++)
                    {
                        modelt = new Model.userRolePemission();
                        Type modeltType = modelt.GetType();
                        for (int i = 0; i < dt2.Rows[n].Table.Columns.Count; i++)
                        {
                            PropertyInfo proInfo = modeltType.GetProperty(dt2.Rows[n].Table.Columns[i].ColumnName);
                            if (proInfo != null && dt2.Rows[n][i] != DBNull.Value)
                            {
                                proInfo.SetValue(modelt, dt2.Rows[n][i], null);
                            }
                        }
                        models.Add(modelt);
                    }
                    model.RolePemissionList = models;
                }
                #endregion
            }
            return(model);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 将对象转换实体
        /// </summary>
        public Model.manager DataRowToModel(DataRow row)
        {
            Model.manager model = new Model.manager();
            if (row != null)
            {
                //利用反射获得属性的所有公共属性
                Type modelType = model.GetType();
                for (int i = 0; i < row.Table.Columns.Count; i++)
                {
                    //查找实体是否存在列表相同的公共属性
                    PropertyInfo proInfo = modelType.GetProperty(row.Table.Columns[i].ColumnName);
                    if (proInfo != null && row[i] != DBNull.Value)
                    {
                        proInfo.SetValue(model, row[i], null);//用索引值设置属性值
                    }
                }

                #region 员工权限======================
                //StringBuilder strSql2 = new StringBuilder();
                //strSql2.Append("select * from MS_userRolePemission");
                //strSql2.Append(" where urp_username=@name");
                //SqlParameter[] parameters2 = {
                //        new SqlParameter("@name", SqlDbType.VarChar,20)};
                //parameters2[0].Value = model.user_name;

                //DataTable dt2 = DbHelperSQL.Query(strSql2.ToString(), parameters2).Tables[0];
                //if (dt2.Rows.Count > 0)
                //{
                //    int rowsCount = dt2.Rows.Count;
                //    List<Model.userRolePemission> models = new List<Model.userRolePemission>();
                //    Model.userRolePemission modelt;
                //    for (int n = 0; n < rowsCount; n++)
                //    {
                //        modelt = new Model.userRolePemission();
                //        Type modeltType = modelt.GetType();
                //        for (int i = 0; i < dt2.Rows[n].Table.Columns.Count; i++)
                //        {
                //            PropertyInfo proInfo = modeltType.GetProperty(dt2.Rows[n].Table.Columns[i].ColumnName);
                //            if (proInfo != null && dt2.Rows[n][i] != DBNull.Value)
                //            {
                //                proInfo.SetValue(modelt, dt2.Rows[n][i], null);
                //            }
                //        }
                //        models.Add(modelt);
                //    }
                //    model.UserPemissionList = models;
                //}
                #endregion

                #region 员工的角色权限======================
                StringBuilder strSql3 = new StringBuilder();
                strSql3.Append("select * from MS_userRolePemission");
                strSql3.Append(" where urp_roleid=@name");
                SqlParameter[] parameters3 =
                {
                    new SqlParameter("@name", SqlDbType.VarChar, 20)
                };
                parameters3[0].Value = model.role_id;

                DataTable dt3 = DbHelperSQL.Query(strSql3.ToString(), parameters3).Tables[0];
                if (dt3.Rows.Count > 0)
                {
                    int rowsCount = dt3.Rows.Count;
                    List <Model.userRolePemission> models = new List <Model.userRolePemission>();
                    Model.userRolePemission        modelt;
                    for (int n = 0; n < rowsCount; n++)
                    {
                        modelt = new Model.userRolePemission();
                        Type modeltType = modelt.GetType();
                        for (int i = 0; i < dt3.Rows[n].Table.Columns.Count; i++)
                        {
                            PropertyInfo proInfo = modeltType.GetProperty(dt3.Rows[n].Table.Columns[i].ColumnName);
                            if (proInfo != null && dt3.Rows[n][i] != DBNull.Value)
                            {
                                proInfo.SetValue(modelt, dt3.Rows[n][i], null);
                            }
                        }
                        models.Add(modelt);
                    }
                    model.RolePemissionList = models;
                }
                #endregion
            }
            return(model);
        }