none
Dúvida - Stored Procedure e Linq RRS feed

  • Pergunta

  • Olá, boa tarde à todos!

     

    Bom ,é o seguinte: Eu  tenho uns 5 anos de experiência em Delphi, mas à cerca de 1 a 2 meses , comecei a estudar (por conta própria) as ferramentas MS (C# ,Sql Server,Linq,etc) ,ao longo desse pouco tempo surgiu um freelance e resolvi fazê-lo em C#,durante este desenvolvimento surgiu-me a seguinte dúvida ou pergunta:

    É viável e/ou aconselhavel, criar um sistema com acesso a BD(Sql Server) com as operações CRUD todas elas feitas com Storeds Procedures,e, se for viável ou aconselhável o seu uso (SP), utilizar o Linq To Sql Classes , para a chamada das mesmas SP para a persistencia?

    Resumindo...

    Eu queria na verdade é  saber , se do ponto de vista técnico, esse tipo de implementação tem alguma vantagem sobre outros métodos como,por exemplo, o ADO.Net, e se pode ser considerado um método "certo" ou "errado" para persistencia, visto que,possa ter melhorias ou problemas no servidor ou no tráfego da rede.

    OBS: O sistema que eu estou desenvolvendo é um sistemas de controle vendas em WindowsForms quem tem um BD com mais ou menos 30 tabelas.

     

    Desde já, eu agradeço a atenção e a colaboração de quem puder me ajudar!

     

    sexta-feira, 9 de julho de 2010 16:49

Respostas

  • Olá Ramiro,

    Eu acredito que sua dúvida é muito comum, porém acho que a maior vantagem sobre o ADO.Net é a produtividade que você vai ter durante o desenvolvimento da sua aplicação. Não considero as tecnologias Linq X ADO.Net X Entity Framework "certas" ou "erradas", mas apenas diferentes, cada qual com suas vantagens e desvantagens.

    Pelo tipo de sistema que você apresentou acredito que o Linq To SQL é uma boa solução, e caso você tenha interesse sugiro que de uma estudada também no Entity Framework, pois em questão de produtividade eu o considero ainda superior ao Linq.

    Espero ter ajudado de alguma forma!

    []s

    PS: Se o post foi útil, classifique-o como resposta! ;-)


    Carlos Monteiro
    MCP ASP.Net C#
    twitter: @carloshkd
    http://www.wx7.com.br
    sexta-feira, 16 de julho de 2010 00:55
  • Complementando o que o Carlos disse...

    Nesse caso eu aconselho a usar o Entity Framework mesmo.... pois é mais facil de configurar o uso de SP para mapiluação dos dados (Insert, Update e Delete) deixando o codigo em C# da mesma forma que "se não tivesse usando procedures".... é uma facilidade extra na hora de tranpor esse sistema para uma base de dados que não va usar procedures ou caso vc pretenda usar outro SBGD no futuro e não queira reescrever as SPs...

    Mas por questao de performance aconcelho a manter a validação dos dados no Linq... para evitar um acesso desnecessario ao BD so para ver se o CPF é valido ou algo assim...


    What would Brian Boitano do ?
    ((2B || !2B) is Question) ?
    sexta-feira, 16 de julho de 2010 02:11
    Moderador

Todas as Respostas

  • Olá Ramiro,

    Eu acredito que sua dúvida é muito comum, porém acho que a maior vantagem sobre o ADO.Net é a produtividade que você vai ter durante o desenvolvimento da sua aplicação. Não considero as tecnologias Linq X ADO.Net X Entity Framework "certas" ou "erradas", mas apenas diferentes, cada qual com suas vantagens e desvantagens.

    Pelo tipo de sistema que você apresentou acredito que o Linq To SQL é uma boa solução, e caso você tenha interesse sugiro que de uma estudada também no Entity Framework, pois em questão de produtividade eu o considero ainda superior ao Linq.

    Espero ter ajudado de alguma forma!

    []s

    PS: Se o post foi útil, classifique-o como resposta! ;-)


    Carlos Monteiro
    MCP ASP.Net C#
    twitter: @carloshkd
    http://www.wx7.com.br
    sexta-feira, 16 de julho de 2010 00:55
  • Complementando o que o Carlos disse...

    Nesse caso eu aconselho a usar o Entity Framework mesmo.... pois é mais facil de configurar o uso de SP para mapiluação dos dados (Insert, Update e Delete) deixando o codigo em C# da mesma forma que "se não tivesse usando procedures".... é uma facilidade extra na hora de tranpor esse sistema para uma base de dados que não va usar procedures ou caso vc pretenda usar outro SBGD no futuro e não queira reescrever as SPs...

    Mas por questao de performance aconcelho a manter a validação dos dados no Linq... para evitar um acesso desnecessario ao BD so para ver se o CPF é valido ou algo assim...


    What would Brian Boitano do ?
    ((2B || !2B) is Question) ?
    sexta-feira, 16 de julho de 2010 02:11
    Moderador