Хостинг ASP. NET Базовое приложение в Windows Служба с одним исполняемым файлом всегда дает неправильный путь к рабочему каталогу - PullRequest
0 голосов
/ 05 мая 2020

Я разместил ASP. Net приложение ядра 3.1 в Windows Service . Он работает нормально, и я могу переходить по страницам.

Теперь я пытаюсь изменить развертывание в виде одного исполняемого файла с параметра « Создать один файл » в настройках Publi sh. после этого я начал получать ошибки 404 для stati c файлов в wwwroot папке . ниже приведены папки и текущие значения:

Directory.GetCurrentDirectory() =  C:\WINDOWS\system32  - This is Correct as per documentation.

AppDomain.CurrentDomain.BaseDirectory = C:\WINDOWS\TEMP\.net\app_windows_servicename\yjzzq0br.phx\
// This should have been the installed application location.

hostingContext.HostingEnvironment.ContentRootPath= C:\WINDOWS\TEMP\.net\app_windows_servicename\yjzzq0br.phx\
// This should have been the installed application location.

Этот путь содержит извлеченные двоичные файлы, но не содержит папки и содержимого для wwwroot. Если я вручную скопирую wwwroot папку и содержимое в это временное место, тогда будет размещено asp. net основная служба в рамках службы windows правильно обслуживает файлы stati c.

помогите мне в этом. Такое же поведение наблюдалось в ASP. Net Core 3.0.1 также.

...