C#: Como saber a linha que a exceção foi lançada
No post de hoje irei mostrar uma forma simples de se capturar a linha exata onde a exceção foi lançada, apenas a linha e não o stack trace inteiro.
Com apenas duas linhas de código (poderia ser uma), selecionamos o stack trace da exceção e colocamos em uma variável, após pegamos o primeiro frame que contém a linha onde a exceção foi lançada, no caso coloquei ela na variável linha assim posso tanto usar em uma mensagem ou um arquivo de texto, log seja o que você precisar.
catch(Exception ex)
{
var stack = new System.Diagnostics.StackTrace(ex, true);
var linha = stack.GetFrame(0).GetFileLineNumber();
}
Com apenas duas linhas de código (poderia ser uma), selecionamos o stack trace da exceção e colocamos em uma variável, após pegamos o primeiro frame que contém a linha onde a exceção foi lançada, no caso coloquei ela na variável linha assim posso tanto usar em uma mensagem ou um arquivo de texto, log seja o que você precisar.