none
Qual a melhor maneira ? RRS feed

  • Pergunta

  • Pessoal,

     

    no meu site, na area de compras, possuo 5 produtos a mostra por vez com nome, imagem, descricao, preco, etc... minha questao é que a cada vez que for acessada a pagina o site tem q ir ao SQL Server e fazer 5 selects pra trazer as informacoes de cada produto individualmente, eu acho q isso nao é muito legal, mas nao consegui pensar em uma maneira eficiente de fazer isso, entao resolvi perguntar pra quem entende... entao, o que voces me recomendam fazer ?

     

    Obrigado

     

    Junior

    terça-feira, 18 de março de 2008 14:29

Todas as Respostas

  • Olá amigo,

     

    Por que não usa o DataGridView? assim você faz um unico pool de conexão, mesmo não entendendo o porque você esta fazendo tantas select, mas aconselho que use o DataGridView assim facilita sua vida.

     

    espero ter ajudado, caso não tenha seja mais especifico que tento lhe dar uma dica.

     

    Atenciosamente,

    Flávio Secchieri Mariotti

    Analista de Sistemas

    http://fsmworlddotnet.blogspot.com

     

    quarta-feira, 19 de março de 2008 13:43
  •  

    Flavio,

     

    noa entendo muito dos recursos do .NET, por isso faço essas perguntas... venho do C e sou acostumado a fazer tudo na mão, agora com o .NET e seus recursos drag & drop, eu ainda estou me adaptando... o negocio é que sao apresentados 5 produtos, cujas caracteristicas sao trazidas do banco de dados. No meu entendimento, o Grid View mostra os dados tabelados, e nao seria essa a ideia... eu pensei em colocar gridview, mas no meu entendimento, entao eu teria que colocar um gridview para cada produto, e para cada grid desses um sqldatasource, pois trata-se de selects diferentes (SELECT * FROM Produtos WHERE Codigo = x), ou tem como eu fazer o mesmo sqldatasource servir os 5 gridviews, mantendo a mesma pool mas alterando o select.

     

    Como voce faria o site do submarino, por exemplo, que mostra varios produtos na pagina ? A ideia que eu quero passa muito perto do site do submarino...

     

    Luiz

    quarta-feira, 19 de março de 2008 14:46
  • Acredito que a melhor maneira seria utilizar o componente DataList ao invés do GridView.

     

    Este componente possui diversos parâmetros de formatação, alinhamento, etc.. Sem contar que você poderá também utilizar css dentro dele.

     

    Vamos lá... Insira o componente e selecione um datasource. Feito isso, vá em "Edit Templates", agora dentro do "Item Template" você irá montar o "quadro" com as informações do produto que você quer apresentar. Vamos supor que sua SQL traga 2 campos ("ProductID" e "ProductPrice") então seu "Item Template" ficaria assim:

     

    ID do Produto: <%# DataBinder.Eval(Container.DataItem, "ProductID") %>

    Valor do Produto: <%# DataBinder.Eval(Container.DataItem, "ProductID", "{0:c}") %>

     

    Com isso você terá a "repetição" dos dados de acordo com sua SQL. Vale lembrar que você pode utilizar elementos aninhados dentro do "Item Template", dando uma olhada no HTML você poderá inserir uma <div class=...> , etc.. Aí é com você. Ah.. tente explorar os recursos do DataList.. é bem simples!

    quinta-feira, 20 de março de 2008 09:00
  • Luis,

     

    e você não pode fazer um único select que retorne todos os dados de uma vez?

     


    Ricardo Oneda
    http://oneda.mvps.org/blog

    quinta-feira, 20 de março de 2008 11:40