Ejemplo n.º 1
0
        public static List <object> ListaObjeto(SqlDataReader dadosTabela, object entidade, Type tipo, List <string> colunas = null)
        {
            PropertyInfo[] propertyInfo = DefineColunasCarregadas(colunas, tipo);
            var            lista        = new List <object>();

            if (propertyInfo.Count() > 0)
            {
                while (dadosTabela.Read())
                {
                    entidade = Activator.CreateInstance(tipo);

                    foreach (var property in propertyInfo)
                    {
                        var nomeColuna = Valida.NomeColuna(property);

                        var valor = dadosTabela[nomeColuna] != DBNull.Value ? dadosTabela[nomeColuna] : null;

                        property.SetValue(entidade, valor, null);
                    }

                    lista.Add(entidade);
                }
            }

            return(lista);
        }
Ejemplo n.º 2
0
        public static List <string> Parametros(object entidade, Type tipo, HydraParameters parametros, PropertyInfo[] colunas)
        {
            List <string> listaNomeColunas = new List <string>();

            foreach (var coluna in colunas)
            {
                var nomeColuna = Valida.NomeColuna(coluna);
                var valor      = entidade.GetType().GetProperty(coluna.Name).GetValue(entidade, null);

                parametros.Add(nomeColuna, valor);
                listaNomeColunas.Add(nomeColuna);
            }

            return(listaNomeColunas);
        }
Ejemplo n.º 3
0
        public static void ColunasDataTable(DataTable dataTable, Type tipo)
        {
            PropertyInfo[] propertyInfo = tipo.GetProperties().Where(x => Valida.Coluna(x) != null || Valida.PrimaryKey(x) != null).ToArray();

            foreach (PropertyInfo propriedade in propertyInfo)
            {
                string nomeColuna = Valida.NomeColuna(propriedade);

                Type tipoColuna = propriedade.PropertyType;

                tipoColuna = Valida.TipoNull(tipoColuna);

                DataColumn dataColumn = new DataColumn(nomeColuna, tipoColuna);

                dataTable.Columns.Add(dataColumn);
            }
        }
Ejemplo n.º 4
0
        public static object Objeto(SqlDataReader dadosTabela, object entidade, Type tipo, List <string> colunas = null)
        {
            PropertyInfo[] propertyInfo = DefineColunasCarregadas(colunas, tipo);

            if (propertyInfo.Count() > 0)
            {
                while (dadosTabela.Read())
                {
                    foreach (var property in propertyInfo)
                    {
                        var nomeColuna = Valida.NomeColuna(property);

                        var valor = dadosTabela[nomeColuna] != DBNull.Value ? dadosTabela[nomeColuna] : null;

                        property.SetValue(entidade, valor, null);
                    }
                }
            }

            return(entidade);
        }
Ejemplo n.º 5
0
        public static List <T> DataTableEmList <T>(DataTable dataTable)
        {
            var lista = new List <T>();
            var tipo  = typeof(T);

            List <string> colunas = dataTable.Columns.Cast <DataColumn>().Select(x => x.ColumnName).ToList();

            PropertyInfo[] propertyInfo = DefineColunasCarregadas(colunas, tipo);

            T entidade;

            foreach (var row in dataTable.Rows.Cast <DataRow>())
            {
                entidade = CriaIstancia <T>(tipo);

                if (propertyInfo.Count() > 0)
                {
                    foreach (var property in propertyInfo)
                    {
                        var nomeColuna = Valida.NomeColuna(property);

                        var valor = row[nomeColuna] != DBNull.Value ? row[nomeColuna] : null;

                        property.SetValue(entidade, valor, null);
                    }
                }
                else
                {
                    var valor = row[0] != DBNull.Value ? row[0] : null;

                    object genericoTipificado = valor;

                    entidade = (T)Convert.ChangeType(genericoTipificado, typeof(T));
                }

                lista.Add(entidade);
            }

            return(lista);
        }
Ejemplo n.º 6
0
        public static List <T> Lista <T>(SqlDataReader dadosTabela, List <string> colunas = null)
        {
            var lista = new List <T>();
            var tipo  = typeof(T);

            PropertyInfo[] propertyInfo = DefineColunasCarregadas(colunas, tipo);

            T entidade;

            while (dadosTabela.Read())
            {
                entidade = CriaIstancia <T>(tipo);

                if (propertyInfo.Count() > 0)
                {
                    foreach (var property in propertyInfo)
                    {
                        var nomeColuna = Valida.NomeColuna(property);

                        var valor = dadosTabela[nomeColuna] != DBNull.Value ? dadosTabela[nomeColuna] : null;

                        property.SetValue(entidade, valor, null);
                    }
                }
                else
                {
                    var valor = dadosTabela[0] != DBNull.Value ? dadosTabela[0] : null;

                    object genericoTipificado = valor;

                    entidade = (T)Convert.ChangeType(genericoTipificado, typeof(T));
                }

                lista.Add(entidade);
            }

            return(lista);
        }