none
Porque Fill no Load demora muito RRS feed

  • Pergunta

  • Tenho em meu sistema um bindnavigator onde ele se preenche com os dados de uma tabela Empresa que é vinculada com outras tabelas., no evento Load do meu form percebo que quando chamo a janela o meu sistema demora muito para responder demorando o processo. sei que a quantidade de dados no meu banco naão é a causa porque existe outro sistema que trabalha com o mesmo banco e funciona rapidamente.

    acredito que seja na forma de carregar meu banco, existe alguma forma de agilizar isso, alguem sabe que hora seria melhor fazer esse carregamento?

     

    private void Form1_Load(object sender, EventArgs e)

    {

     

    this.vendedorTableAdapter.Fill(this.bancoDataSet.vendedor);

     

    this.situacaoTableAdapter.Fill(this.bancoDataSet.situacao);

     

    this.tipodeenderecoTableAdapter.Fill(this.bancoDataSet.tipodeendereco);

     

    this.bairrosTableAdapter.Fill(this.bancoDataSet.Bairros);

     

    this.cidadesTableAdapter.Fill(this.bancoDataSet.Cidades);

     

    this.empresaTableAdapter.Fill(this.bancoDataSet.Empresa);

    }

    sexta-feira, 10 de dezembro de 2010 13:40

Respostas

  • Use o código q vc ta usando no load no evento shown, é só ir na aba propriedades do form e escolha o raiozinho q é os eventos
    nele tem um evento chamado shown coloca o código q ta no evento load no evento shown
    Att Edney Desenvolvedor C#, WindowsForms, Asp.Net WebForms, Asp.Net MVC
    • Marcado como Resposta Jeferson Medeiros segunda-feira, 13 de dezembro de 2010 14:58
    sexta-feira, 10 de dezembro de 2010 15:57

Todas as Respostas

  • usa thread..

    http://www.csharp-examples.net/create-new-thread/

     

    e evita de usar select * from tabela no seu comando sql.. selecione somente os campos necessarios.. isso ajuda tb

     


    se a resposta foi útil, classifique :)
    ate mais,

    Rodrigo Soria
    • Sugerido como Resposta Rodrigo Sória domingo, 12 de dezembro de 2010 02:35
    sexta-feira, 10 de dezembro de 2010 13:51
  • mas por exemplo se eu preciso paginar o meu bindnavigator eu preciso ter meu banco carregado nele.

     

    como nao usar select * from tabela ?

     

    o que o thread ajudaria?

    sexta-feira, 10 de dezembro de 2010 14:01
  • apliquei thread e naum funcionou .. continou lento.
    sexta-feira, 10 de dezembro de 2010 14:08
  • Cara usa o evento shown do form
    Att Edney Desenvolvedor C#, WindowsForms, Asp.Net WebForms, Asp.Net MVC
    sexta-feira, 10 de dezembro de 2010 14:18
  • desculpe mas não entendi.. poderia explicar mais detalhes?
    sexta-feira, 10 de dezembro de 2010 14:35
  • cara.. thread e maneira de executar varios processos ao mesmo tempo..  ou seja vc aplicando thread na sua aplicacao de maneira correta vc poderia acessar o banco quantas vezes forem necessario.. detalhe isso somente com uma conexao aberta.. pq senao vai piorar mais ainda.. como eu disse aplicar de modo correto.

    ou ate mesmo realizar o preenchimento dos grid de forma assincrona ou seja.. todos os grids ao mesmo tempo.. um outro detalhe. e o seguinte se esta aplicacao que vc esta desenvolvendo nao vai rodar em plataforma x64 e nem e pc de mais de um processador.. entao a thread nao terao tanto efeito de perfomace qnto num pc de varios processadores e plataforma x64

    em relacao ao select.. e logico cara.. se vc utiliza na sua pagina somente o campo nome, sobrenome .. pq trazer a data de nascimento.. profissao.. idade.. traga somente o necessario.. se vc so precisa do nome e sobrenome.em faca o select assim.

    select nome, sobrenome from tabela

     

     

     


    se a resposta foi útil, classifique :)
    ate mais,

    Rodrigo Soria
    • Sugerido como Resposta Rodrigo Sória domingo, 12 de dezembro de 2010 02:35
    sexta-feira, 10 de dezembro de 2010 15:24
  • Use o código q vc ta usando no load no evento shown, é só ir na aba propriedades do form e escolha o raiozinho q é os eventos
    nele tem um evento chamado shown coloca o código q ta no evento load no evento shown
    Att Edney Desenvolvedor C#, WindowsForms, Asp.Net WebForms, Asp.Net MVC
    • Marcado como Resposta Jeferson Medeiros segunda-feira, 13 de dezembro de 2010 14:58
    sexta-feira, 10 de dezembro de 2010 15:57
  • Ajudou mas não removeu muito a demora .. entretanto mudei a forma de preencher meu bindnavigator e ajudou no carregamento...usei thread e não ajudou em nada ...

     

    Mas no evento Shown ajudou muito..

    segunda-feira, 13 de dezembro de 2010 14:58