none
Como converter o valor de data para string? RRS feed

  • Pergunta

  • Pessoal,

    No select abaixo preciso converter a Data para string, porém está ocorrendo o erro "The method 'ToString' is not implemented."

    var historico = from historico in dataContext.GetTable<Historico> 
            select new { Data = historico.DataHora.ToString("dd/MM/yyyy"), Descrição = historico.Descricao };
    

    O erro ocorre pois tento converter a DataHora para String.

     

    Alguém saberia o porquê?

    sexta-feira, 16 de julho de 2010 17:44

Respostas

  • Olá Bruno.

    Olha posso estar enganado mas acho que você não vai conseguir assim. Ao tentar converter seu LINQ para TSQL esse erro ocorre porque não existe ToString em TSQL.

    Tente assim 

    var historico = (from historico in dataContext.GetTable<Historico> 
      select new { Data = historico.DataHora, Descrição = historico.Descricao }).FirstOrDefault();
    
    string strData = historico.DataHora.ToString();
    

    Não testei, verfiique por favor.

    Qualquer dúvida, só avisar.

    Obrigado. 


    Marcos Aguiar Jr - Brazil blog: https://marquinhosnet.wordpress.com/
    segunda-feira, 19 de julho de 2010 13:43

Todas as Respostas

  • Bruno,

    Caramba, que erro estranho... Tem certeza que o campo DataHora é do tipo DateTime?


    André Alves de Lima
    Visite o meu site: http://andrealveslima.spaces.live.com
    Me siga no Twitter: @andrealveslima
    sexta-feira, 16 de julho de 2010 20:01
    Moderador
  • Hi,

    hehe, macabro. ^^

    na duvida usa o Converter.ToString(historico.DataHora)

    esse nao pode dar erro.

    Att,


    Adriel Codeco Silva
    Email: adriel.silva@uppercase.com.br
    MSN: adrielcodeco@hotmail.com
    Blog: adrielcodeco.wordpress.com
    Uppercase – www.uppercase.com.br

    R. Primeiro de Março, 661 – Centro Barra Bonita - SP - CEP 17340-000
    sexta-feira, 16 de julho de 2010 22:38
    Moderador
  • Ou apela para:

    String.Format("{0:dd/mm/yyyy}", historico.DataHora);



    What would Brian Boitano do ?
    ((2B || !2B) is Question) ? Se não da certo como voce esta fazendo... Tente fazer de um jeito totalmente diferente....
    sábado, 17 de julho de 2010 04:29
    Moderador
  • Olá Bruno.

    Olha posso estar enganado mas acho que você não vai conseguir assim. Ao tentar converter seu LINQ para TSQL esse erro ocorre porque não existe ToString em TSQL.

    Tente assim 

    var historico = (from historico in dataContext.GetTable<Historico> 
      select new { Data = historico.DataHora, Descrição = historico.Descricao }).FirstOrDefault();
    
    string strData = historico.DataHora.ToString();
    

    Não testei, verfiique por favor.

    Qualquer dúvida, só avisar.

    Obrigado. 


    Marcos Aguiar Jr - Brazil blog: https://marquinhosnet.wordpress.com/
    segunda-feira, 19 de julho de 2010 13:43
  • Bruno,

     

    Acho que está faltando uma coisa (.Value)..

     

    Tente assim:

     

    var historico = from historico in dataContext.GetTable<Historico> 
        select new { Data = historico.DataHora.Value.ToString("dd/MM/yyyy"), Descrição = historico.Descricao };

    Abraço,


    Ricardo Alves
    ricardoalves.me
    sábado, 31 de julho de 2010 14:42