Подтвердить что ты не робот

Visual Studio 2013 не может отлаживать javascript в cshtml

У меня есть веб-приложение ASP.NET, созданное с помощью Visual Studio 2013. Я пытаюсь отлаживать JavaScript в CSHTML файле. Тем не менее, всякий раз, когда я запускаю веб-страницу, любая точка останова превращается в стрелку красного круга и заявляет: "В настоящий момент точка останова не будет удалена. С этой строкой не связан код исполняемого кода целевого кода отладчика. Возможные причины включают: условную компиляцию, оптимизация компилятора или целевая архитектура этой строки не поддерживается текущим типом кода отладчика."

Недавно проект был переключен на поддержку MVC и RAZR, ни один из которых я не знаю хорошо, и это именно тогда, когда эта проблема началась. Однако поиск этих результатов привел к результатам, которые не устраняют мою проблему.

Web.config:

<compilation debug="true"...>

Я знаю, что могу отлаживать JavaScript с помощью Firebug или какого-либо другого инструмента для браузера, но я бы скорее придерживался отладки Visual Studio, поскольку это то, к чему я привык.

4b9b3361

Ответ 1

Итак, очевидно, это "известная проблема", которая будет исправлена ​​как можно скорее. Временная работа, которая работает для "некоторых" людей, заключается в том, что любой Javascript находится в отдельном файле.

Это вызвано тем, что RAZR и Javascript в том же файле и Visual Studio 2013 не могут обрабатывать отладки в этом экземпляре.

Ответ 2

Я не знаю, какова ваша конкретная проблема, но если вы хотите заставить точку останова отладки всегда выполняться, добавьте debugger; в строку, которую вы хотите остановить, и она остановится. Это независимо от того, где находится JS (в файле .js,.html, cshtml и т.д.).

Вот сообщение в блоге об этом:

http://sumitmaitra.wordpress.com/2013/12/11/quickbytes-visual-studio-2013-and-javascript-debugging/

Я также согласен с тем, что JS должен заходить в файл .js(который у меня никогда не возникало проблемы с добавлением точки прерывания в файле .js), но для быстрого прототипирования это решение, которое вы можете использовать.

Если это все еще не работает, вы всегда можете использовать инструменты F12

Ответ 3

Единственным браузером, который позволяет отлаживать javascript файл из Visual Studio, является Internet Explorer. (это то, что я узнал после тестирования моего приложения в разных браузерах)

Ответ 4

Я помещаю свой javascript в отдельный файл и отлаживаю с IE, иначе он не будет работать.

По какой-то причине хром не позволяет вам входить в javascript.

Ответ 5

Еще одна вещь, которую нужно проверить. Если у вас есть App_Start | BundleConfig.cs(который поставляется с MVC 4 - или, возможно, 3), установите для BundleTable.EnableOptimizations значение false (или, как и я, заверните его в #if! DEBUG #endif и возьмите настройку по умолчанию),

Ответ 6

Я попробовал и не смог использовать Chrome, а затем IE и в итоге использовал аддон Firebug в Firefox, и мне удалось отлаживать и устанавливать контрольные точки в моем JS без проблем (в приложении MVC6 на Visual Studio 2015, где это по-видимому, еще проблема?!)...

FYI. Когда я попытался отладить мой JS в Chrome с помощью инструментов разработчика F12, он сказал мне, что это не вариант, поскольку отладчик уже привязан к другому процессу...

Ответ 7

Для людей, приезжающих сюда в 2017 году, я хочу поделиться тем, что у меня была такая же проблема с VS2017 Enterprise RC и с сообществом VS 2015. > с помощью любого браузера, но Internet Explorer. Использование IE сделало трюк для меня.

Кроме того, в VS2017 мне пришлось добавить оператор debugger , чтобы заставить VS начать поиск точек отладки.

Наконец, я хотел бы попросить хотя бы комментарий от людей, голосующих вниз.