Как получить номер строки из исходного файла на C# (аналог __LINE__)?
Формулировка задачи:
Пишу большую программку на C# и хотела посмотреть при выводе на печать
Дайте пожалуйста, у кого есть, рабочий код как получить номер текущей строки. Заранее спасибо
Читала описание StackTrace на msdn, но там понятных примеров не нашла.
номер текущей строки
на С++ это можно сделать используя переменную __LINE__, на C# такой переменной нет, я нашла в интернете способы, но ни один из них не работаетint currentLine = new System.Diagnostics.StackTrace(true).GetFrame(0).GetFileLineNumber(); // в переменной currentLine всегда 0
StackFrame CallStack = new StackFrame(0, true); // также не работает: StackFrame(true) StackFrame(1, true) StackFrame(0, true) StackFrame(0) Console.WriteLine("Line: " + CallStack.GetFileLineNumber().ToString() ); // это не работает
Решение задачи: «Как получить номер строки из исходного файла на C# (аналог __LINE__)?»
textual
Листинг программы
using System; using System.Diagnostics; using System.Runtime.CompilerServices; namespace SampleLine { class ConsoleApp { static void Main() { Console.WriteLine("строка {0}", GetLineNumber()); Console.WriteLine("строка {0}", GetLineNumber()); } static int GetLineNumber([CallerLineNumber] int lineNumber = 0) { return lineNumber; } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д