#c# #.net #asp.net-core #.net-core
#c# #.net #asp.net-core #.net-core
Вопрос:
Я разрабатываю ASP.NET Ядро 3.1 REST API и я использую dotnet watch run
. Это позволяет мне выполнять быструю итерацию в разработке: изменить файл .cs -> перестроить проект -> перезапустить процесс приложения -> выполнить запрос HTTP-клиента, чтобы увидеть результат.
Однако это все еще медленный рабочий процесс разработки (например, по сравнению с разработкой веб-api NodeJS, где изменения в файле js на сервере почти сразу становятся доступными для http-клиента). Мне кажется, что основным узким местом в .NET watch является остановка процесса, а затем его повторный запуск.
Возможно ли это в ASP.NET Ядро, чтобы как-то ускорить работу наблюдателя (например. просто создайте необходимые файлы, например, одну dll, и скопируйте ее поверх старой в выходной папке, не перезапуская все приложение)? Это значительно улучшило бы рабочий процесс разработки, особенно когда я хочу добавить интеграционные тесты (например, сторонний http-клиент, который проверяет мой сервер и БД), которые также автоматически запускались бы при изменениях файлов.
Комментарии:
1. Приложение должно перезапуститься, чтобы получить изменения в ссылочных DLL-файлах.
2. Это было бы действительно плохой идеей, если бы какая-либо dll нуждалась в какой-либо инициализации, и процесс не был полностью перезапущен, он с треском провалился. Лучшее, что можно сделать, это отредактировать и продолжить (что вы уже можете сделать): приостановить процесс, разрешить редактирование безопасных блоков в памяти, применить изменения и продолжить.