Usuário com melhor resposta
Erro - Non-Invocable member 'NpgsqlDataAdapter' cannot be used like a method

Pergunta
-
Boa tarde pessoal
Sou um usuário acido deste fórum, desde quando comecei a aprender a programar, agora estou me aventurando a aprender a programar em C# pelo Visual Studio 2015, estou acompanhando um curso em vídeo de como programar em camadas com C#, só que no vídeo o instrutor usa o MySQL e eu estou usando o PostgreSQL 4 2.0, na canada DAL onde fazemos a conexão com o banco de Dados esta dando um erro como este acima nos comandos onde vou grifar. Se alguém souber como resolver eu agradeço muito.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data; using Npgsql; //Referencia do provider de conexão do Postgresql. namespace DAL { class AcessoBancoDados { private NpgsqlConnection conn; private DataTable data; private NpgsqlDataAdapter da; private NpgsqlDataReader dr; private NpgsqlCommandBuilder cb; // private NpgsqlTypes private string server = "localhost"; //localhost static string userName = "postgres"; //nome do administrador static string password = "25d04m1966a"; //senha do administrador static string databaseName = "protheus"; //nome do banco de dados public void Conectar() { if (conn != null) conn.Close(); string connStr = String.Format("server={0}; userName id={1}; password={2}; databaseName={3}; pooling=false", server, userName, password, databaseName); try { conn = new NpgsqlConnection(connStr); conn.Open(); } catch (NpgsqlException ex) { throw new Exception(ex.Message); } } public void ExecutarComandoSql(string ComandoSql) { NpgsqlCommand comando = new NpgsqlCommand(comandoSql, conn); comando.ExecuteNonQuery(); conn.Close(); } public DataTable RetDataTable(string sql) { data = new DataTable(); da = NpgsqlDataAdapter(sql, conn); cb = NpgsqlCommandBuilder(da); da = Fill(data); return data; } private NpgsqlDataAdapter Fill(DataTable data) { throw new NotImplementedException(); } public NpgsqlDataReader RetDataReader(string sql); NpgsqlCommand comando = new NpgsqlCommand(NpgsqlTypes, conn); NpgsqlDataReader dr = comando.ExecutaReader(); private string comandoSql; dr.Read(); return dr; } }
Respostas
-
Olá,
Tenta mudar assim. colocando o new
public DataTable RetDataTable(string sql) { data = new DataTable(); da = new NpgsqlDataAdapter(sql, conn); cb = new NpgsqlCommandBuilder(da); da = Fill(data); return data; }
as chaves no fim do metodo
public NpgsqlDataReader RetDataReader(string sql) { NpgsqlCommand comando = new NpgsqlCommand(NpgsqlTypes, conn); NpgsqlDataReader dr = comando.ExecutaReader(); private string comandoSql; dr.Read(); return dr; }
- Sugerido como Resposta Juliano Nunes Silva Oliveira quarta-feira, 11 de outubro de 2017 12:14
- Marcado como Resposta Filipe B CastroModerator segunda-feira, 16 de outubro de 2017 13:18
-
A blz,
Olha agora
o seu paramento está errado no construtor da npgsqlcommand
public NpgsqlDataReader RetDataReader(string sql) { NpgsqlCommand comando = new NpgsqlCommand(sql, conn); NpgsqlDataReader dr = comando.ExecutaReader(); private string comandoSql; dr.Read(); return dr; }
- Marcado como Resposta Filipe B CastroModerator segunda-feira, 16 de outubro de 2017 13:18
Todas as Respostas
-
Olá,
Tenta mudar assim. colocando o new
public DataTable RetDataTable(string sql) { data = new DataTable(); da = new NpgsqlDataAdapter(sql, conn); cb = new NpgsqlCommandBuilder(da); da = Fill(data); return data; }
as chaves no fim do metodo
public NpgsqlDataReader RetDataReader(string sql) { NpgsqlCommand comando = new NpgsqlCommand(NpgsqlTypes, conn); NpgsqlDataReader dr = comando.ExecutaReader(); private string comandoSql; dr.Read(); return dr; }
- Sugerido como Resposta Juliano Nunes Silva Oliveira quarta-feira, 11 de outubro de 2017 12:14
- Marcado como Resposta Filipe B CastroModerator segunda-feira, 16 de outubro de 2017 13:18
-
Bom dia Welington Junior,
Quanto ao acrescentar o comando new funcionou.
Mas quanta às Chaves nada mudou.
Mesmo assim muito Obrigado, vou quebrando a cabeça aqui, caso descubra mais alguma coisa agradeço muito se me passar a solução.
Abraços
-
Samuel,
Se o problema original da pergunta foi resolvido, marque a resposta do Welington como aceita e abra um novo tópico para o outro problema (das chaves).
Juliano Nunes - http://linkedin.com/in/julianonunes
Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.
Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.
-
A blz,
Olha agora
o seu paramento está errado no construtor da npgsqlcommand
public NpgsqlDataReader RetDataReader(string sql) { NpgsqlCommand comando = new NpgsqlCommand(sql, conn); NpgsqlDataReader dr = comando.ExecutaReader(); private string comandoSql; dr.Read(); return dr; }
- Marcado como Resposta Filipe B CastroModerator segunda-feira, 16 de outubro de 2017 13:18
-
Bom dia,
Por falta de retorno essa thread está encerrada.
Se necessário, favor abrir uma nova thread.
Atenciosamente,Filipe B de Castro
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.