Ошибка RedirectToPage в ядре ASP.net MVC - укажите относительную корневую ошибку - PullRequest
0 голосов
/ 27 июня 2018

Я хочу перенаправить на страницу бритвы из обычного действия контроллера, как это:

return RedirectToPage("Edit", new { id = blogId });

У меня уже есть страница бритвы с именем "Edit", которая работает при обычной навигации по ней: enter image description here

С RedirectToPage Я получаю следующую ошибку:

InvalidOperationException: относительный путь страницы 'Редактировать' может быть только используется при выполнении Razor Page. Укажите корневой относительный путь с ведущий '/' для создания URL за пределами страницы Razor.

Есть идеи, как указать этот путь?

1 Ответ

0 голосов
/ 27 июня 2018

Ошибка уже дала вам ответ: вы должны добавить начальный '/' в начале и указать относительный путь к вашей странице бритвы. Таким образом, вы должны иметь

return RedirectToPage("/BlogPosts/Edit", new { id = blogId });

Вместо

return RedirectToPage("Edit", new { id = blogId });

Обратите внимание на разницу между "/ BlogPosts / Edit" и "Edit" . RedirectToPage метод ожидает путь к вашей странице бритвы (в зависимости от вашего изображения относительный путь "/ BlogPosts / Edit" ), начиная с корневой папки, которая Pages по умолчанию.

...