Как я могу получить базовый URL своего веб-приложения в ASP.NET MVC?

Как уже говорилось много раз - с div ~ p выбраны все элементы

, которым предшествует элемент

.

Проверьте этот список все селектор CSS.

290
задан Benjamin Pollack 17 August 2009 в 02:47
поделиться

4 ответа

Предполагая, что у вас есть доступный объект Request, вы можете использовать:

string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Content("~"));

Если он недоступен , вы можете перейти к нему через контекст:

var request = HttpContext.Current.Request
384
ответ дан 23 November 2019 в 01:43
поделиться

Также можно использовать это. Для страниц бритвы лучше использовать его, чем другие.

https://ml-software.ch/posts/getting-the-base-url-for-an-asp-net-core-mvc-web-application-in-your-static-javascript-files

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <base href='@Url.AbsoluteContent("~/")'>
    <title>@ViewBag.Title - ASP.NET Core Web Application</title>
    <!-- ... -->
</head>
<body>
0
ответ дан 23 November 2019 в 01:43
поделиться

Уловка с использованием IIS заключается в том, что привязки IIS могут отличаться от ваших общедоступных URL-адресов (WCF, я смотрю на вас), особенно на многосетевых производственных машинах. Я склоняюсь к использованию конфигурации для явного определения «базового» URL-адреса для внешних целей, поскольку это имеет тенденцию быть немного более успешным, чем извлечение его из объекта Request.

25
ответ дан 23 November 2019 в 01:43
поделиться

У вас может быть статический метод, который смотрит на HttpContext.Current и решает, какой URL использовать (сервер разработки или действующий сервер) в зависимости от идентификатора хоста. HttpContext может даже предложить более простой способ сделать это, но это первый вариант, который я нашел, и он отлично работает.

3
ответ дан 23 November 2019 в 01:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: