c# - 标签助手 asp-route- 不工作 - Razor Pages(.Net Core 3

我是 Razor Pages 的新手,所以也许我做错了。 我正在使用 .Net Core 3 preview 5出于某种原因,我的 asp-route参数不起作用。

我的 cshtml(索引)页面中有以下按钮:

<form method="get" asp-page-handler="RetrieveData" asp-route-retrieveid="5">
    <button class="btn btn-primary">Retrieve Data</button>
</form>

此操作背后的代码:

public async Task<IActionResult> OnGetRetrieveData(int retrieveid)
{
    // Do stuff
    return Page();
}

每次我按下按钮时,retrieveid 参数都保持为 0(空):

我的整个 cshtml 代码:

@page "{handler?}"
@model IndexModel
@{
    ViewData["Title"] = "Retrieve Data";
}

@section Scripts
{
    <script type="text/javascript">
        // Some jQuery
    </script>
}


<div class="text-center">
    <h1 class="display-4">Retrieve Data</h1>
</div>



@if (Model.ErrorMessage != null)
{
    <div id="ErrorMsg" class="alert alert-info alert-dismissible fade show" role="alert">
        @Model.ErrorMessage
        <button type="button" class="accept-policy close" data-dismiss="alert" aria-label="Close" data-cookie-string="@Model.ErrorMessage">
            <span aria-hidden="true">Sluiten</span>
        </button>
    </div>
}



<button id="getData" class="btn btn-primary" data-toggle="modal" data-target="#modalGetDataConfirm">
    Get Data
</button>



<!-- Modal -->
<div id="modalGetDataConfirm" class="modal fade" role="dialog">
    <div class="modal-dialog">

        <!-- Modal content-->
        <div class="modal-content">
            <div class="modal-header">
                <h4 class="modal-title">Get Data</h4>
                <button type="button" class="close" data-dismiss="modal">&times;</button>
            </div>

            <div class="modal-body">
                <p>Do you want to retrieve the data</p>
            </div>

            <div class="modal-footer">
                <form method="get" asp-page-handler="RetrieveData" asp-route-retrieveid="5">
                    <button class="btn btn-primary">Retrieve Data</button>
                </form>
                <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
            </div>
        </div>
    </div>
</div>



<br />


@if (Model.DataModel != null)
{

    // table with search and the retrieved data


    var prevDisabled = !Model.DataModel.HasPreviousPage ? "disabled" : "";
    var nextDisabled = !Model.DataModel.HasNextPage ? "disabled" : "";

    <a asp-page-handler="LoadData"
       asp-route-sortOrder="@Model.CurrentSort"
       asp-route-pageIndex="@(Model.DataModel.PageIndex - 1)"
       asp-route-currentFilter="@Model.CurrentFilter"
       class="btn btn-default @prevDisabled">
        Vorige
    </a>
    <a asp-page-handler="LoadData"
       asp-route-sortOrder="@Model.CurrentSort"
       asp-route-pageIndex="@(Model.DataModel.PageIndex + 1)"
       asp-route-currentFilter="@Model.CurrentFilter"
       class="btn btn-default @nextDisabled">
        Volgende
    </a>

}

奇怪的是 asp-route分页中的值 <a>元素正在工作..

最佳答案

您需要将参数添加到路由模板中:

@page "{handler?}/{id?}"
@model IndexModel
@{
    ViewData["Title"] = "Retrieve Data";
}
...

关于c# - 标签助手 asp-route- 不工作 - Razor Pages(.Net Core 3 预览版 5),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56666521/

相关文章:

javascript - 如何将 blob 转换为 xlsx 或 csv?

php - Symfony 中的 API 分页

math - 使用固定大小位宽寄存器的偏移二进制算法是否有任何常规规则?

flutter - 抽屉菜单 - 侧面的子菜单

reactjs - React hook 等待上一个调用完成

apache-spark - 如何将处理程序附加到 sparkUI

google-cloud-platform - 使用 Terraformer\Terraform 克

html - css 比例变换和滤镜模糊的问题

amazon-web-services - 是否可以向 InputPath 添加新的键/值?

react-native - ScrollView : content image is cropp