VS 2017 .Net Core 2.0, Angular 4, ошибка: System.Net.Http.WinHttpException: соединение с сервером было прервано аварийно

Я использую ПК с Windows 7 Professional, используя Visual Studio 2017 версии 15.4.5. Когда я создал проект .Net Core 2.0 и выбрал тип Angular, он сразу заработал нормально.

Затем я добавил шрифт Awesome и Primeng (https://www.primefaces.org/primeng/#/), как мне кажется, стандартным способом, то есть добавлением ссылок на файл package.json, затем на раздел nonTreeShakableModules файла webpack.config.vendor.js, а затем добавление модулей в app.module.shared. тс. Это была версия Primeng 5.0.2 и версия Font-Awesome 4.7.0.

Поначалу все работало нормально — классы font awesome работали, а кнопка показывала все ожидаемые функции кнопки Primeng, когда я добавлял тестовый html на домашнюю страницу.

Затем я прекратил отладку и нажал F5 для повторной сборки, и я получил ошибку, описанную ниже — это то, что появляется в моем веб-браузере (Chrome, IE или Firefox). После перезагрузки моего ПК он снова работал нормально в первый раз, но снова, как только я прекратил отладку и снова нажал F5, я получил ту же ошибку. В прошлый раз перезагружал, даже это не помогло. Я гуглил весь день, но не нашел ответа, что может быть причиной этого.

Кто-нибудь может помочь?

Вот что я вижу в своем браузере вверху:

При обработке запроса произошло необработанное исключение.

WinHttpException: соединение с сервером было прервано аварийно

Неизвестное местоположение

IOException: операция чтения не удалась, см. внутреннее исключение.

System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

HttpRequestException: ошибка при копировании содержимого в поток.

Система.Net.Http.HttpContent+d__48.MoveNext()


person JRS    schedule 29.11.2017    source источник
comment
Круто портировали PrimeFaces на .Net теперь все адаптирующиеся .Net, могут испытать такое же удовольствие как и джава энтузиасты. А если серьезно... пожалуйста, проверьте свои теги.   -  person Kukeltje    schedule 30.11.2017
comment
Я нашел несколько вещей, которые помогают (но не решают проблему): (1) Он собирается, запускается и работает, если я нажму Ctrl+F5 вместо просто F5. Конечно, это не позволяет мне отлаживать серверную часть, что является проблемой; (2) Я подозреваю, что проблема связана со сборками на стороне сервера, включая компоненты Primeng, потому что они запускаются и работают нормально с помощью F5, если я предотвратил предварительную визуализацию, изменив это: ‹app asp-prerender-module=ClientApp/dist/main-server›Loading ...‹/app› на это: ‹app›Загружается...‹/app›. Конечно, это мешает предварительному рендерингу, так что это тоже не идеально...   -  person JRS    schedule 30.11.2017


Ответы (1)


Это то, что решило проблему для меня. На странице Index.cshtml вместо этого тега, который Microsoft удобно предоставляет из коробки:

<app asp-prerender-module="ClientApp/dist/main-server">Loading...</app>

Измените его на это:

<app asp-ng2-prerender-module="ClientApp/dist/main-server" asp-prerender-timeout="100000">Loading...</app>

Теперь, почему в мире мы не получим модуль пререндеринга ng2 по умолчанию, когда вы выбираете тип проекта Angular, я не понимаю — я уверен, что у Microsoft есть веская причина, верно?

person JRS    schedule 30.11.2017