Отладчик останавливается, когда нет точки останова VS2010
Недавно я изменил один из параметров в отладчике, и я думаю, что это то, что вызывает эту проблему, но я не могу "отменить" его... Я google и все хиты возвращаются с обратным ", почему отладчик не останавливается в точке останова
В любом случае кто-то может пролить свет?
EDIT: когда я нажимаю f5 в режиме отладки. Каждый раз. Он переходит в Program.cs и останавливается на
Application.SetCompatibleTextRenderingDefault(false);
в Main()
Ответы
Ответ 1
Старый поток, который я знаю, Но я столкнулся с одной и той же проблемой. Все, что я сделал, это удалить все точки останова (Ctrl + Shift + F9 для меня), затем очистить мой проект запуска, а затем перестроить, а затем запустить. После этого он прекратил ломать, где не было точек останова.
Ответ 2
У меня возникла одна и та же проблема, однако моя проблема связана не с изменением варианта. Я думаю, что я нашел причину, но не решил ее исправить. У меня есть решение с несколькими проектами, задействованные проекты:
- Бизнес-логика
- Доступ к данным
- Консольное приложение
В BL и DA у меня есть класс Credit.cs. Оба класса находятся в разных пространствах имен.
Когда я устанавливаю точку останова в строке 235 в BL.Credit.cs, тогда отладчик останавливается в строке 236 в DA.Credit.cs, даже если нет контрольных точек. Я думаю, что это ошибка в Visual Studio.
Когда я удаляю точку останова в BL, впоследствии не останавливается и в DA.
Я отправил ошибку, если вы хотите проголосовать https://connect.microsoft.com/VisualStudio/feedback/details/699804/debugger-stops-on-same-line-in-different-class-where-there-is-no-breakpoint
Ответ 3
Здесь обходной путь для поведения точек останова, активизирующихся в каждом классе с таким же именем, даже если полностью квалифицированные имена различны. После того, как вы установили точку останова, перейдите в окно Breakpoints (Debug | Windows | Breakpoints, если он еще не вставлен). Щелкните правой кнопкой мыши точку останова, которая запускает слишком много одинаковых классов (например, Project2.Action прерывается, когда вы хотите, чтобы Project1.Action имел точку останова) и выбор "Условие". Установите значение условия примерно так: this.GetType(). FullName == "Project1.Action".
Впоследствии это условие делает так, что выполнение только ломается в классе с правильным полным именем.
Ответ 4
Остановится ли оно, предоставив вам исключение или полностью прекратив выполнение вашего приложения? Если у вас нет кода UnHandledExceptionHandler в вашем коде, он может выглядеть так, как будто он просто останавливается, но на самом деле у вас есть исключение.
UPDATE:
Вот как ваш метод Main должен выглядеть как захват необработанных исключений, поскольку try/catch не всегда работает.
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e)
{
throw new NotImplementedException();
}
static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
// You should/MAY see an error right here.
throw new NotImplementedException();
}