Ajuda C# - Erro em public void
08/09/2009
0
:cry: Estou iniciando no mundo da programação e comecei com VB.NET, mais depois que conheci o C fiquei maravilhado, nada contra o VB.
Contudo estou tentando passar os códigos do VB.NET para C e estou esbarrando em alguns problemas começando por uma [u:d6fa70c225]“PUBLIC VOID (public sub)”, [/u:d6fa70c225]quem poderia me ajudar analisando o meu código e me falar onde eu estou errando e corrigir, ficarei agradecido. Segue o código.
Eu faço a chamada da “[color=blue:d6fa70c225]public void [/color:d6fa70c225]Entrar()” no botão entrar.
[color=blue:d6fa70c225]private void[/color:d6fa70c225] btnEntrar_Click(object sender, EventArgs e)
{
Entrar();
}
[color=blue:d6fa70c225]public void[/color:d6fa70c225] Entrar()
{
try
{
Form frmMDI = new Form();
//Consistencia do botão entrar
if (TxtNome.Text.Trim() == ´´)
{
MessageBox.Show(´FAVOR ENTRAR COM UM LOGIN VÁLIDO !!!´, ´ATENÇÃO´, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
TxtNome.Focus();
return;
}
//Criar um objeto leitor ( sqldatareader )
SqlDataReader oLeitor;
SqlCommand oComando = new SqlCommand();
{
oComando.Connection = oconexao.conectar;
oComando.CommandText = ´Select Tcli_Usuario, Tcli_Senha from Tcli_Usuarios where ltrim(Tcli_Usuario) = ´´+TxtNome.Text.Trim+´´ and ltrim(Tcli_Senha) = ´´+TxtSenha.Text.Trim+´´´;
//Execulta o Objeto leitor
oLeitor = oComando.ExecuteReader;
}
if (oLeitor.HasRows == false)
{
MessageBox.Show(TxtNome.Text + ´ --- USUÁRIO OU SENHA INVÁLIDOS´, ´ATENÇÃO´, MessageBoxButtons.OK, MessageBoxIcon.Error);
TxtNome.Focus();
}
else
{
//While contador < 4
while (oLeitor.Read)
{
MessageBox.Show(´SEJA BEM VINDO --- ´ + TxtNome.Text + ´ --- AO CEI !!!!´, ´CEI´, MessageBoxButtons.OK, MessageBoxIcon.Information);
frmMDI.Show();
this.Hide();
return;
}
}
if (contador < 3)
{
oLeitor.Close();
//Fecha o Objeto Leitor
oComando.Dispose();
//Dispensa o Objeto comando
//Conta mais 1
contador += 1;
}
else
{
MessageBox.Show(TxtNome.Text + ´ --- TENTATIVAS DE LOGON FALHAS´, ´O SISTEMA SERÁ FECHADO!´, MessageBoxButtons.OK, MessageBoxIcon.Stop);
Application.Exit();
}
}
catch (Exception ex)
{
// End While
MessageBox.Show(ex.Message);
}
}
1 - Cannot convert method group ´conectar´ to non-delegate type ´System.Data.SqlClient.SqlConnection´. Did you intend to invoke the method?
2 - Operator ´+´ cannot be applied to operands of type ´string´ and ´method group´
3 - Cannot convert method group ´ExecuteReader´ to non-delegate type ´System.Data.SqlClient.SqlDataReader´. Did you intend to invoke the method?
4 - Cannot convert method group ´Read´ to non-delegate type ´bool´. Did you intend to invoke the method?
Contudo estou tentando passar os códigos do VB.NET para C e estou esbarrando em alguns problemas começando por uma [u:d6fa70c225]“PUBLIC VOID (public sub)”, [/u:d6fa70c225]quem poderia me ajudar analisando o meu código e me falar onde eu estou errando e corrigir, ficarei agradecido. Segue o código.
Eu faço a chamada da “[color=blue:d6fa70c225]public void [/color:d6fa70c225]Entrar()” no botão entrar.
[color=blue:d6fa70c225]private void[/color:d6fa70c225] btnEntrar_Click(object sender, EventArgs e)
{
Entrar();
}
[color=blue:d6fa70c225]public void[/color:d6fa70c225] Entrar()
{
try
{
Form frmMDI = new Form();
//Consistencia do botão entrar
if (TxtNome.Text.Trim() == ´´)
{
MessageBox.Show(´FAVOR ENTRAR COM UM LOGIN VÁLIDO !!!´, ´ATENÇÃO´, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
TxtNome.Focus();
return;
}
//Criar um objeto leitor ( sqldatareader )
SqlDataReader oLeitor;
SqlCommand oComando = new SqlCommand();
{
oComando.Connection = oconexao.conectar;
oComando.CommandText = ´Select Tcli_Usuario, Tcli_Senha from Tcli_Usuarios where ltrim(Tcli_Usuario) = ´´+TxtNome.Text.Trim+´´ and ltrim(Tcli_Senha) = ´´+TxtSenha.Text.Trim+´´´;
//Execulta o Objeto leitor
oLeitor = oComando.ExecuteReader;
}
if (oLeitor.HasRows == false)
{
MessageBox.Show(TxtNome.Text + ´ --- USUÁRIO OU SENHA INVÁLIDOS´, ´ATENÇÃO´, MessageBoxButtons.OK, MessageBoxIcon.Error);
TxtNome.Focus();
}
else
{
//While contador < 4
while (oLeitor.Read)
{
MessageBox.Show(´SEJA BEM VINDO --- ´ + TxtNome.Text + ´ --- AO CEI !!!!´, ´CEI´, MessageBoxButtons.OK, MessageBoxIcon.Information);
frmMDI.Show();
this.Hide();
return;
}
}
if (contador < 3)
{
oLeitor.Close();
//Fecha o Objeto Leitor
oComando.Dispose();
//Dispensa o Objeto comando
//Conta mais 1
contador += 1;
}
else
{
MessageBox.Show(TxtNome.Text + ´ --- TENTATIVAS DE LOGON FALHAS´, ´O SISTEMA SERÁ FECHADO!´, MessageBoxButtons.OK, MessageBoxIcon.Stop);
Application.Exit();
}
}
catch (Exception ex)
{
// End While
MessageBox.Show(ex.Message);
}
}
1 - Cannot convert method group ´conectar´ to non-delegate type ´System.Data.SqlClient.SqlConnection´. Did you intend to invoke the method?
2 - Operator ´+´ cannot be applied to operands of type ´string´ and ´method group´
3 - Cannot convert method group ´ExecuteReader´ to non-delegate type ´System.Data.SqlClient.SqlDataReader´. Did you intend to invoke the method?
4 - Cannot convert method group ´Read´ to non-delegate type ´bool´. Did you intend to invoke the method?
Pra_santos
Curtir tópico
+ 0
Responder
Posts
10/09/2009
Knight_of_wine
Acho que posso te ajudar nessa.
1- Onde está o método oconexao.conectar?~
Se você tiver o método conectar de oconexao criado, apenas coloque os parênteses no fim do método.
Lembre-se que você deve sempre colocar os parenteses depois que chamar um método, como por exemplo:
Ou
Senão existir esse método criado instancie sua SqlConnection.
O 3 e o 4 tá explicado lá em cima sempre coloque parenteses depois de invocar um método.
E
Espero que tenha ajudado.
Abraço.
1- Onde está o método oconexao.conectar?~
Se você tiver o método conectar de oconexao criado, apenas coloque os parênteses no fim do método.
Lembre-se que você deve sempre colocar os parenteses depois que chamar um método, como por exemplo:
oconexao.conectar();"
Ou
string joao = getNomeJoao() //é só um exemplo, esse método não serve pra nada e está horrível
Senão existir esse método criado instancie sua SqlConnection.
O 3 e o 4 tá explicado lá em cima sempre coloque parenteses depois de invocar um método.
while (oLeitor.Read()) {
E
oLeitor = oComando.ExecuteReader();
Espero que tenha ajudado.
Abraço.
Responder
Clique aqui para fazer login e interagir na Comunidade :)