none
Formato Data Entity Framework Win.Forms C# RRS feed

  • Pergunta

  • Pessoal, campo de data que eu uso para fazer um find no banco não está retornando nada pois o formato está errado, como eu posso formatar o campo para buscar o registro corretamente?

    var recVenda = lojaVendaBo.Find(v => v.CODIGO_FILIAL == iFilial.COD_FILIAL && v.DATA_VENDA == val).AsEnumerable<LOJA_VENDA_VEN>();

    Formato da data atual: 01/10/2012

    Formato da data banco: 2012-10-01


    Leonardo Jacques da Silva Desenvolvedor .net

    domingo, 14 de outubro de 2012 23:47

Respostas

  • Você está usando Entity Framework né, então você não precisa se preocupar com formatos de data do banco de dados.

    Quando vc faz isso aqui:

    v.DATA_VENDA == val

    O entity framework sabe certinho o formato que deve passar para o banco de dados.

    O teu problema deve estar na conversão que você esta fazendo do seu textbox para a variavel "val".

    quinta-feira, 18 de outubro de 2012 00:59
  • Olá Leosul,

    O Danimar esta correto.

    Além disso, verifique os seguintes itens:

    - Seu campo no banco de dados esta com data e hora iguais ao passado por parâmetro?

    - Tente fazer uma query deste modo:

    var recVenda = lojaVendaBo.Find(v => v.CODIGO_FILIAL == iFilial.COD_FILIAL && 
    				v.DATA_VENDA.Year == val.Year && 
    				v.DATA_VENDA.Month == val.Month && 
    				v.DATA_VENDA.Day == val.Day)
    		          .AsEnumerable<LOJA_VENDA_VEN>();
    .
    []s!

    Fernando Henrique Inocêncio Borba Ferreira
    Microsoft MVP - Data Platform Development
    while(alive){ this.WriteCode(); }
    Blog: http://ferhenriquef.com/
    Twitter: @ferhenrique
    Entity Framework - Brasil: https://www.facebook.com/EntityFrameworkBrasil

    quinta-feira, 18 de outubro de 2012 11:42
    Moderador

Todas as Respostas

  • Você está usando Entity Framework né, então você não precisa se preocupar com formatos de data do banco de dados.

    Quando vc faz isso aqui:

    v.DATA_VENDA == val

    O entity framework sabe certinho o formato que deve passar para o banco de dados.

    O teu problema deve estar na conversão que você esta fazendo do seu textbox para a variavel "val".

    quinta-feira, 18 de outubro de 2012 00:59
  • Olá,

    Estou movendo este post para a categoria de Acesso a Dados...

    Por favor, das próximas vezes que tiver alguma dúvida relacionada a esse assunto, poste por lá...

    Obrigado...

    André Alves de Lima
    Microsoft MVP - Client App Dev
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima

    quinta-feira, 18 de outubro de 2012 11:29
    Moderador
  • Olá Leosul,

    O Danimar esta correto.

    Além disso, verifique os seguintes itens:

    - Seu campo no banco de dados esta com data e hora iguais ao passado por parâmetro?

    - Tente fazer uma query deste modo:

    var recVenda = lojaVendaBo.Find(v => v.CODIGO_FILIAL == iFilial.COD_FILIAL && 
    				v.DATA_VENDA.Year == val.Year && 
    				v.DATA_VENDA.Month == val.Month && 
    				v.DATA_VENDA.Day == val.Day)
    		          .AsEnumerable<LOJA_VENDA_VEN>();
    .
    []s!

    Fernando Henrique Inocêncio Borba Ferreira
    Microsoft MVP - Data Platform Development
    while(alive){ this.WriteCode(); }
    Blog: http://ferhenriquef.com/
    Twitter: @ferhenrique
    Entity Framework - Brasil: https://www.facebook.com/EntityFrameworkBrasil

    quinta-feira, 18 de outubro de 2012 11:42
    Moderador