У меня есть простое веб-приложение ASP.NET Core с такой страницей http://localhost:5050/Posts/Create/3
.Как получить значение id в Url из Razor View в ASP.NET Core
В моем представлении Razor Views/Posts/Create.cshtml
, как бы я мог получить значение «3», чтобы создать ссылку, например <a href="/Blogs/Details/3">« Back to Blog</a>
?
До сих пор создал ссылку, используя следующий Tag Helper, но я не знаю, что надеть на asp-route-id
:
<a asp-controller="Blogs" asp-action="Details" asp-route-id="" class="btn btn-default btn pull-right">« Back</a>
Я просто используя по умолчанию MVC маршрут по:
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
Я знаю, что могу получить его от Модели (т. Е. Model.Blog.BlogId
), но я ищу, чтобы получить его из Url, используя что-то вроде Request.Query["id"]
в Views/Post/Create.cshtml
.
Я пробовал asp-route-id="@Context.Request.Query["id"]
.
Да, это не для ядра asp.net. В ядре asp.net отсутствует 'RequestContext'. – kimbaudi
Первая строка - это ядро asp.net, вставленное из моего проекта, но, возможно, не пригодное для использования именно так, как вы пожелаете. Как насчет последней ссылки? Я не пробовал, но должен быть MVC 6. – Daboul
Эй, я просто попробовал 'Context.GetRouteData(). Значения [" id "]' и он работает. Можете ли вы отредактировать свой ответ? Я буду отмечать это как правильное решение. – kimbaudi