Beispiel #1
0
        public async Task <List <string> > RetornarColunasVisiveisAsync()
        {
            var           repositorio     = new SqlClient.Repositorio(IdServidor);
            List <string> colVisiveisList = new List <string>();
            var           id = await repositorio.SelecionarIdConfiguracaoTabelaAsync(Database, Schema, Nome);

            if (id > 0)
            {
                colVisiveisList = await repositorio.SelecionarColunasVisiveisAsync(id);
            }


            return(colVisiveisList);
        }
Beispiel #2
0
        public async Task <string> CarregarAsync(string tabela, string schema, string database, int idServidor, bool carregarFks = true)
        {
            Nome       = tabela;
            Schema     = schema;
            Database   = database;
            IdServidor = idServidor;
            Valores    = new List <object>();

            string retorno = string.Empty;

            SqlClient.Repositorio repositorio = new SqlClient.Repositorio(IdServidor);

            if (string.IsNullOrEmpty(Database))
            {
                throw new ArgumentException("Propriedade Database é obrigatória.");
            }

            if (string.IsNullOrEmpty(Nome))
            {
                throw new ArgumentException("Propriedade Nome da tabela é obrigatória.");
            }

            if (string.IsNullOrEmpty(Schema))
            {
                Schema = "DBO";
            }

            try
            {
                Valores           = null;
                ValoresMultilinha = null;
                ConsultaDados     = null;
                pkAlteracao       = string.Empty;

                Colunas = await repositorio.RetornarColunasAsync(Database, Schema, Nome);

                TodasColunas = new List <Coluna>();
                TodasColunas.AddRange(Colunas);
                CarregarNomesInput();
                TemChavePrimaria    = Colunas.Where(p => p.IsChavePrimaria).FirstOrDefault() != null;
                TemChaveEstrangeira = Colunas.Where(p => p.IsChaveEstrangeira).FirstOrDefault() != null;
                camposExibir        = await repositorio.SelecionarColunasVisiveisAsync(Database, Schema, Nome);

                ChavesPrimarias = await repositorio.RetornarColunasChavePrimariaTabelaAsync(Nome, Schema, Database);

                RemoverColunasIgnoradas();
                QuantidadeCampos = Colunas.Count;
                if (carregarFks)
                {
                    await CarregarColunasChaveEstrangeiraAsync();
                }
                IsIdentity = Colunas.FirstOrDefault().IsIdentity;
                await CarregarColunasFiltro();
            }
            catch (Exception ex)
            {
                retorno = ex.Message;
            }

            return(retorno);
        }