Я пытаюсь обновить код в старом MVC-проекте (.NET Framework 4.5.2) для работы с .NET Core 2.2. Я застрял в методе расширения HtmlHelper, который генерирует ссылку внутри строки.
public static HtmlString GetMenu(this HtmlHelper htmlHelper)
{
htmlString += string.Format("<li{0}>{1}</li>",
controller == "Examples" ? " class=\"selected\"" : "",
htmlHelper.ActionLink("Examples", "Index", "Examples")
);
}
Класс HtmlHelper находится внутри Microsoft.AspNetCore.Mvc.ViewFeatures в .NET Core, но для метода ActionLink требуется дополнительная информация. Вместо 3 аргументов, как в старом проекте, теперь требуется 8 аргументов, и два из них - протокол и имя хоста. Но я не уверен, как получить имя хоста и протокол в статическом классе, не обращаясь к HttpContext.