2016-09-22 7 views
0

Я использую visual studio 2013 для программирования на C#. Я тестировал настраиваемое исключение, но сообщение об исключении появилось в инструкции throw (это правильно), но я хочу, чтобы он появлялся в строке, вызывающей исключение 1-го? Как я могу это сделать?Пользовательские исключения в C# отображаются в инструкции throw. Я хочу, чтобы он был в большинстве внешних операторов, которые генерируют исключение

class Abc 
{ 
    static void Main(String[] s) 
    { 
     Something(); // I want exception popup msg in this line 
    } 

    public static void something() 
    { 
     if(condition) 
     { 
      throw new SomeException(); // Exception popup message appear here 
     } 
    } 
} 
+0

Это очень непонятно, что вы имеете в виду мне «я хочу, чтобы появиться в строке, которые вызывают исключение 1-ое». Попробуйте пояснить и в идеале форматировать свой код в следующий раз. (Возможно, вам нужен блок 'catch' в вашем методе' Main'?) –

+0

Сначала вам нужно определить это слово «появиться». Я предполагаю, что вам нужна трассировка стека. - https://msdn.microsoft.com/en-us/library/system.exception.stacktrace(v=vs.110).aspx –

ответ

1

Я предполагаю, что вы всплываете, вы имеете в виду всплывающее окно визуальной студии для исключенных исключений. И вы только не знали, где что-то было вызвано. Вы должны проверить стек вызовов в исключении. Он скажет вам, где что-то() было вызвано.

В случае исключения всплывающее окно, нажмите на просмотр сведений, чтобы увидеть объект исключения. В стеке вызовов вы увидите что-то вроде: SomeException брошено: Something() в файле someFile.cs 12 Main() в someFile.cs файловыми 5

45 является линия исключение было брошено и 12 из чего-то вызывается.

Более подробная информация о окне стеки вызовов: https://msdn.microsoft.com/en-us/library/a3694ts5.aspx

+0

как это сделать? – huzefa

 Смежные вопросы

  • Нет связанных вопросов^_^