none
Dentro do catch não é achado o meu objeto RRS feed

  • Pergunta

  • Olá pessoal, 

    Eu tenho uma aplicação ASP.NET C#

    No meu código, eu tenho um tratamento com try e catch.
    No catch eu tenho um método que salva um log. O problema é que eu preciso salvar no meu log qual era a propriedade do objeto que iria passar pelo método.

    Dessa forma eu consigo saber no meu log qual foi exatamente o produto que deu problema.

    O problema ocorre que dentro do laço catch eu não consigo utilizar o objeto produto. + propriedade
    Ele não encontra o objeto produto 

    try
    {

    foreach(var produto in produtos)
    {
    produto.metodo(); 

    }        

    catch (Exception ex)
    {  

    }

    Alguém pode me ajudar, obrigado

    quinta-feira, 8 de dezembro de 2011 14:29

Respostas

  • Uma solução seria vc declarar um objeto produto fora do Try e dentro do ser foreach manter o mesmo atualizado a cada loop.

     

    var produtoX = new produto();
    
    try
    {
    
    foreach(var produto in produtos)
    {
    produto.metodo(); 
    produtoX  = produto;
    }        
    } 
    catch (Exception ex)
    {  
    produtoX  // esta no escopo agora
    }
    


    quinta-feira, 8 de dezembro de 2011 14:38

Todas as Respostas

  • Uma solução seria vc declarar um objeto produto fora do Try e dentro do ser foreach manter o mesmo atualizado a cada loop.

     

    var produtoX = new produto();
    
    try
    {
    
    foreach(var produto in produtos)
    {
    produto.metodo(); 
    produtoX  = produto;
    }        
    } 
    catch (Exception ex)
    {  
    produtoX  // esta no escopo agora
    }
    


    quinta-feira, 8 de dezembro de 2011 14:38
  • Obrigado Alessandro, funcionou.
    Achei que essa forma seria uma gambiarra, pensei que existia um jeito correto, pois a final ele pode entrar no catch logo no inicio do meu foreach, que está fora do try 
    sexta-feira, 9 de dezembro de 2011 15:03