BLOCO USING

 Tópico anterior Próximo tópico Novo tópico

BLOCO USING

C#

 Compartilhe  Compartilhe  Compartilhe
#478935 - 06/01/2018 12:18:47

MOREIRA
SAO LUIS - TURU
Cadast. em:Agosto/2004


Bom dia a Todos, iniciando mas uma aventura no C#.

Bom, agora preciso chamar a conexao da class, dentro de um bloco using

como ficaria ?

  namespace ISA
{
   public static class FireBird
    {
        static FbConnection _conexaoFB;        
        public static FbConnection conexao

        {
            get
            {
                return _conexaoFB;
            }
                        
        }

        public static bool Conectar()

        {        

            string strConexao;          
            strConexao = "User = SYSDBA; Password = masterkey; Database = D:\\ISA\\SCI\\Bin\\BaseMestre\\BDADOS.FDB; Port = 3050; Dialect = 3; Server Type=0";


            try
                {
                    _conexaoFB = new FbConnection(strConexao);
                    _conexaoFB.Open();
                
                }
                    catch (Exception erro)
                {

                throw erro;                
            }        

            return true;
        }

        public static bool Encerrar()
        
        {
            _conexaoFB.Close();
            _conexaoFB = null;
            return false;
        }
    }
}



  using (xxxxxx)

{

// conteúdo

}


Eu não nasci, fui Compilado

#478936 - 06/01/2018 12:22:49

MARCOSLING
SAO PAULO
Cadast. em:Agosto/2008


para vc quer chamar a sua classe dentro de using? é isso?



#478937 - 06/01/2018 12:39:27

MOREIRA
SAO LUIS - TURU
Cadast. em:Agosto/2004


Última edição em 06/01/2018 12:40:52 por MOREIRA

Citação:
:
para vc quer chamar a sua classe dentro de using? é isso?


Isso, não é a mesma coisa,

mas sim a idéia

no VB.NET.. faço assim


tentei adaptar mas sem sucesso.


  Using con As FbConnection = GetConnection()
     conteúdo......
   End Using



Eu não nasci, fui Compilado

#478938 - 06/01/2018 13:01:07

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
É muito simples:

public class Conexao()
{
    private FbConnection _conexao = new FbConnection("aqui, vai a sua string de conexão");
    public FbConnection GetConnection()
    {
        _return this._conexao;
    }
}


Para usar é da mesma maneira que você usa hoje:

using (FbConnection con = new Conexao().GetConnection())
{
    //Aqui vai o seu código
}


Evite usar classes estáticas, elas não são para esse tipo de situação.

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


#478939 - 06/01/2018 13:24:28

CLEVERTON
SERRINHA
Cadast. em:Dezembro/2003


Membro da equipe
Mas você vai usar um bloco using usando o modificador da classe static ?



#478940 - 06/01/2018 13:44:37

MOREIRA
SAO LUIS - TURU
Cadast. em:Agosto/2004


Última edição em 06/01/2018 13:45:09 por MOREIRA

Citação:
:
Mas você vai usar um bloco using usando o modificador da classe static ?



Como sugestão do KERPLUNK, irei me aventurar no C#
Até aí, tudo certo!

Agora vem os termos técnico.

sobre sua pergunta. usar o "modificador da classe static"
aprincípio não irei saber te responder de forma correta

mas vamos lá, o que queres dizer com "usar o "modificador da classe static"

sei que cada profissional escreve seu código diferente, POG ou não.

Só preciso iniciar com boas práticas.

"Toda pergunta, seja ela bem feita ou não".
o que importa é a intenção compartilhar seu conhecimento.


Eu não nasci, fui Compilado

#478941 - 06/01/2018 13:53:01

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Um modificador de classe, define o comportamento da classe em si. A palavra chave "static" que você usa na definição do cabeçalho da classe. Por serem estáticas, elas não podem ser instanciadas e só podem conter membros estáticos, além de não poderem ser herdadas. Já uma classe não estática pode ser instanciada, herdada e conter membros(propriedades, métodos e campos) estáticos.

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


#478943 - 06/01/2018 14:22:01

MOREIRA
SAO LUIS - TURU
Cadast. em:Agosto/2004


Citação:
:
Um modificador de classe, define o comportamento da classe em si. A palavra chave "static" que você usa na definição do cabeçalho da classe. Por serem estáticas, elas não podem ser instanciadas e só podem conter membros estáticos, além de não poderem ser herdadas. Já uma classe não estática pode ser instanciada, herdada e conter membros(propriedades, métodos e campos) estáticos.


Ou Seja, um método privado, certo ?

Muito obrigado, pelo esclarecimento..



Eu não nasci, fui Compilado

#478945 - 06/01/2018 14:48:22

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Não, método privado é outra coisa. Membros(métodos, propriedades, campos e variáveis), podem ter vários diferentes modificadores de acesso(private, public, sealed, static e outros). O que você está não está entendendo ainda é o conceito de instância. Como esse conceito não é muito claro ou difundido em VB6, você ainda não conseguiu um "comparador". Imagine aqueles formulários(aqueles de papel mesmo) onde você cadastra seus dados. Nome, endereço, telefone, enfim, todos os seus dados, você preenche nesse ficha. Se você olhar para a mesa da secretária, vai ver uma pilha deles, todos em branco e todos iguais. Essas fichas em branco são o equivalente à sua classe e cada um que vai e preenche a ficha, é uma instância. Esse é um modo bem simples de entender o que é uma instância. Uma classe é um modelo abstrato(sem dados) de dados. Nesse mesmo contexto, uma classe estática, seria como se existisse apenas uma ficha em branco, no momento que alguém a preenche, ela fica valendo para todos. Uma propriedade private(privada) seria como algum dado que você não pode preencher na ficha, ele seria tipo usado apenas internamente, tipo, alguma anotação que a secretária faça quando você entrega a ficha.
O objetivo principal aqui é separar na sua cabeça essa coisa de código e de conceito. Tente entender que objeto é como um objeto real mesmo, algo palpável. Portanto, ele deve ser modelado de maneira que atenda todas as necessidades. Em se falando em aplicação, vamos pegar o exemplo de uma classe de conexão. Ela deve conter todo o necessário para que outros objetos que a utilizem possam funcionar. Como na pseudo-classe que passei acima. Ela contém um método chamado "GetConnection", ele é público, portanto pode ser acessado(consumido) em locais onde exista uma instância do objeto de conexão. Ela também contém um membro privado(_conexão). Esse membro, não pode ser acessado por outros membros, pois é privado, mas ele é repassado indiretamente pelo método GetConnection.
Está conseguindo entender melhor?

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


 Tópico anterior Próximo tópico Novo tópico


Para responder este tópico o login é requerido
Se você já possui uma conta de usuário por favor faça seu login
Se você não possui uma conta de usuário use a opção Criar usuário