Как принудительно URL-адрес.действий, чтобы использовать параметризованные URL-адрес корневой папки.
Я звоню URL-адрес.Действие от .объем ядра API, так что нет страницы URL-адрес корневой папки призвать.
Как я могу передать один из них?
Что я уже пробовал:
Это исходный код (не выполняющий свою работу):
string confirmationLink = Url.Action("SetPassword", "Account", new { userid = userMaster.Id, token = confirmationToken }, protocol: HttpContext.Request.Scheme);
Вот некоторые из моих усилий - два возвращают ноль, средний не строится:
var aUrl = Url.RouteUrl("https://localhost:5101/", new { id = "MailRoot", category = "confirmationURLs" }); Url.RouteUrl uri1 = new Url("http://mypage.com/"); var url2 = Url.RouteUrl("MailRoot", "https://localhost:5101/");
Конечный результат должен быть примерно таким:
Пожалуйста, подтвердите свою учетную запись, нажав на этот <a href='https://localhost:5101/Account/SetPassword?userId=6fb79cd9-2030-494a-aade-47c770a9f0da&token=ALongToken'>link</a>.
Обходной путь: построение ссылки в виде простой строки - осторожно!
Это не дает ответа на заданный вопрос, но дает мне функциональное решение, которое я могу продолжить:
string confirmationLink = ${this.config.p_ConfirmationURLRoot}/{this.config.p_ConfirmatonURLController}/{this.config.p_ConfirmationURLAction}?userId={ userMaster.Id}&token={ confirmationToken}";
Richard Deeming
Как насчёт:
string confirmationLink = Url.Action("SetPassword", "Account", new { ... }, protocol: "https");