Я использую ASP.NET Core с Pages , и я создал контроллер, подобный этому:
namespace Demo.Pages.Channel
{
public class IndexModel : PageModel
{
public string ChannelUrl { get; set; }
public void OnGet(string url)
{
ChannelUrl = url;
}
}
}
И я попытался наметить маршрут:
services.AddMvc()
.AddRazorPagesOptions(options =>
{
options.Conventions.AddPageRoute("/channel/index", "/{url}");
options.Conventions.AddPageRoute("/home/error", "/channel/index");
});
И вот несколько случаев, которые я проверял:
![1](https://i.stack.imgur.com/Jqtqb.png)
![2](https://i.stack.imgur.com/KDKmX.png)
Работает нормально. Но все равно работал , когда я пытался:
![3](https://i.stack.imgur.com/5QLl6.png)
В приведенных выше вариантах я сопоставил URL /channel/index
со страницей ошибок /home/error
, но страницу нельзя перенаправить. Почему?
Я хочу отобразить URL как: localhost:44392/{url}
, но localhost:44392/channel/index
Как я могу это сделать?