Угловая 6 маршрутизация в ядре asp.net 2.1 - PullRequest
0 голосов
/ 11 июня 2018

Я создал приложение asp.net core 2.1 с angular 6, и IISExpress работает нормально.Но после публикации все скомпилированные файлы CSS и JS не могут быть загружены из-за неверного пути.

Начальная страница - index.html:

Исходный код:

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>WebApplication2</title>
  <base href="/">

  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
  <app-root>Loading...</app-root>
</body>
</html>

После публикации:

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>WebApplication2</title>
  <base href="/">

  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
<link rel="stylesheet" href="styles.7fa1a6c91a163e80323b.css"></head>
<body>
  <app-root>Loading...</app-root>
<script type="text/javascript" src="runtime.a66f828dca56eeb90e02.js"></script><script type="text/javascript" src="polyfills.4853e6859e98ef4b710a.js"></script><script type="text/javascript" src="main.9fd6ccea546c33575aa9.js"></script></body>
</html>

Если я вручную изменю базовый href в index.html, все файлы CSS и JS загружаются, но не работают.

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

Редактировать:

Оказывается, что вручную исправить базовый HREF способ исправить это.Он должен быть изменен на абсолютный путь URL.Я изменил его на "appPath /" раньше, но это нарушило угловую маршрутизацию.Если я изменю его на "https://www.server.com/appPath/",, он будет работать хорошо.

Я думаю, что есть лучший способ передать правильный базовый URL в index.html, например, передать" @ Url.Content ("~ /") "из макета Razor. Но нужно выяснить, как это сделать.

...