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

Редактирование и продолжение не работает в VS 2010/ASP.Net MVC 2

Хотя функция "Включить редактирование и продолжить" отмечена на вкладке "Сеть" моего проекта ASP.Net MVC 2, я не могу изменить исходный код во время работы. Например, если я попытаюсь отредактировать контроллер во время паузы в отладчике, я не могу изменить файл (действует как чтение только).

Я нашел связанный пост Редактировать и продолжить в веб-проектах ASP.NET, однако

  • Ответы, похоже, подсказывают, что я должен хотя бы отредактировать код, а затем перезагрузить страницу, чтобы увидеть результат.
  • Я не знаю, что такое различие между веб-приложением и веб-сайтами.
4b9b3361

Ответ 1

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

Поскольку ASP.NET MVC использует веб-приложение каждый раз, когда вы вносите изменения, вам необходимо перекомпилировать его, а перекомпиляция требует выхода из режима Debug. Действительно, вы можете изменять представления и частичные данные без необходимости перекомпиляции, но для логики контроллера вам всегда нужно перекомпилировать.

Чтобы ускорить работу, я бы порекомендовал вам следующее:

  • При работе с представлениями и частичными элементами (т.е. выполнение некоторых элементов дизайна) запустите приложение с Ctrl+F5 вместо F5, которое просто запустит приложение в обычном режиме, и ваши изменения будут автоматически подняты при обновлении браузера
  • При работе с кодом вы должны иметь соответствующий unit test, который позволит вам быстро проверить поведение. В этом случае работа в режиме отладки может быть более полезна, так как вам может потребоваться проверка значений.

Ответ 2

С Mvc вы не можете редактировать и продолжать. Но если вы запустите проект с помощью IISExpress, то без запуска проекта в режиме отладки вы можете отредактировать код, перестроить проект. И тогда обновление страниц в браузере будет работать.

Ответ 3

В ответ на @Darin я должен сказать, что мне не нравится идея изменить код во время работы.

Я думаю, что мы должны быть достаточно дисциплинированными, чтобы написать тест, который отражает ожидаемый результат, написать код и затем протестировать вживую.

Сказав это, способ, которым я обойдусь, - запустить приложение в браузере без работы, внести изменения, компилировать и затем обновлять браузер.

Конечно, тогда у меня нет возможности переходить через код, но я могу приложить к рабочему процессу в любое время, когда мне нужно.

Ответ 4

Переход на VS2012. Это поддерживает редактирование и продолжение для проектов ASP.Net(со вкладки "Веб" в окне свойств проекта). Хотя он по умолчанию не включен!