none
Problema com Conexao na classe RRS feed

  • Pergunta

  • Pessoal;

       estou desenvolvendo uma aplicaçao web com o VS2008 com C#

    consigo fzer a conexao com o banco nas paginas aspx, porem nao consigo fazer na classe, nos arquivos .cs

    segue abaixo como me conecto atraves de paginas aspx:

    protected void btn_entrar_Click(object sender, ImageClickEventArgs e)
            {
                if (Page.IsValid)
                {
                    // verificando se o número informado pelo usuário é o mesmo gerado
                    if (this.txt_numero.Text.ToUpper() == Session["CaptchaImageText"].ToString().ToUpper())
                    {
                        /*verifica se ja existe um usuario logado*/
                        if (Session["Usuario"] == null)
                        {
                            string login = this.txt_login.Text;
                            string senha = this.txt_senha.Text;
    
                            lbl_msg.Text = "Acessando o Sistema...";
                            lbl_msg.Visible = true;
    
                            SqlConnection ObjCon = new SqlConnection(WebConfigurationManager.ConnectionStrings["mitConn"].ConnectionString);
    
                            //SqlConnection conn = null;
    
                            try
                            {
    
                                // Verifica se a conexao esta fechada, se tiver abre a mesma
                                if (ObjCon.State == ConnectionState.Closed)
                                {
                                    // abre a conexao
                                    ObjCon.Open();
                                }
    
                                // criaçao do objeto comando, que recebe a query que será utilizada na operaçao e a conexao com o banco
                                SqlCommand cmd = new SqlCommand();
                                cmd.Connection = ObjCon;
                                cmd.CommandText = "Select LoginUsuario, Nome, Senha, CodigoPessoa from Usuario where LoginUsuario = @Login and Senha = @Senha";
                                cmd.Parameters.Add("@Login", SqlDbType.VarChar);
                                cmd.Parameters["@Login"].Value = login;
                                cmd.Parameters.Add("@Senha", SqlDbType.VarChar);
                                cmd.Parameters["@Senha"].Value = senha;
                                SqlDataReader reader = cmd.ExecuteReader();
                                bool btAcesso = reader.HasRows;
                                reader.Close();
                                if (btAcesso)
                                {
                                    Session["Usuario"] = login;
                                    Session["CodigoPessoa"] = "234";
                                    Response.Redirect("principal.aspx");
                                }
                                else
                                {
                                    lbl_msg.Text = "Usuário ou Senha invalidos";
                                    lbl_msg.Visible = true;
                                }
    
                                // fecha a conexao com o banco
                                ObjCon.Close();
                            }
                            catch (Exception ex)
                            {
    
                            }
                            finally
                            {
                                if (ObjCon != null)
                                {
                                    // fecha a conexao com o banco
                                    ObjCon.Close();
                                }
                            }
    
                        }
                        else /*Caso ja exista um usuario logado.. acontece o deslog*/
                        {
                            Session["Usuario"] = null;
                            lbl_msg.Text = "Efetue o Login Novamente!";
                            lbl_msg.Visible = true;
                        }
                    }
                    txt_numero.Text = "";
                    Session["Usuario"] = null;
                    lbl_msg.Text = "Digite o Texto Novamente!";
                    lbl_msg.Visible = true;
                }
            }
    porem se tento fazer da mesma forma no arquivo cs, nao consigo, portanto estou tentando fazer da seguinte forma:

    #region  Construtores
    
            public Usuario()
            {
                this.conexao = new SqlConnection(ConfigurationSettings.AppSettings["mitConn"]);
            }
    
            public Usuario(int CodigoPessoa, string Nome, string Senha,
                           string OutrasInformacoes, string Situacao, DateTime UltimoLogin,
                           string AlteracaoUsuario, DateTime AlteracaoDataHora)
            {
                this._CodigoPessoa = CodigoPessoa;
                this._Nome = Nome;
                this._Senha = Senha;
                this._OutrasInformacoes = OutrasInformacoes;
                this._Situacao = Situacao;
                this._UltimoLogin = UltimoLogin;
                this._AlteracaoUsuario = AlteracaoUsuario;
                this._AlteracaoDataHora = AlteracaoDataHora;
            }
            #endregion
    
            #region Metodos
    
            public void atualizar(Usuario usuario)
            {
                if (usuario != null)
                {
    
                    string comandoSQL = "UPDATE Usuario " +
                           "SET Senha = '" + usuario._Senha + "'" +
                           " WHERE LoginUsuario = '" + usuario._LoginUsuario + "'";
    
                    this.comando = new SqlCommand(comandoSQL, conexao);
                    try
                    {
                        this.conexao.Open();
                        this.comando.ExecuteNonQuery();
                    }
                    catch (Exception excecao)
                    {
                        Console.WriteLine(excecao);
                    }
                    finally
                    {
                        this.conexao.Close();
                    }
                }
            }
    
            #endregion
    só que nao consigo pegar os dados da string mitConn por aqui no cs.

    favor avaliar o ultimo codigo e sugerir uma soluçao.
    quarta-feira, 23 de setembro de 2009 17:56

Respostas

Todas as Respostas