Asp.net core 如何在ASP.NET Core 3.1中隐藏URL参数

Asp.net core 如何在ASP.NET Core 3.1中隐藏URL参数,asp.net-core,Asp.net Core,是否可以隐藏或删除ASP.NET Core 3.1中的URL参数 示例操作链接 <a asp-controller="Example" asp-action="Test" asp-route-entityid="@Model.EntityID">Entity</a> 实体 结果 https://localhost:44352/Example/Test?entityid=Entity 所需结果 https://

是否可以隐藏或删除ASP.NET Core 3.1中的URL参数

示例操作链接

<a asp-controller="Example" asp-action="Test" asp-route-entityid="@Model.EntityID">Entity</a>
实体
结果
https://localhost:44352/Example/Test?entityid=Entity

所需结果
https://localhost:44352/Example/Test

将被呈现为HTML锚
标记,通常它将帮助通过查询字符串或路由数据传递数据

为了达到隐藏或删除URL参数的要求,您可以尝试使用表单和隐藏字段来发布数据

<form id="form1" asp-controller="Example" asp-action="Test" >
    <input type="hidden" name="entityid" value="123" />
    <a id="a_formpost" asp-controller="Example" asp-action="Test">Entity</a>
</form>

实体
单击标签时触发表单提交

<script>
    $(function () {
        $("#a_formpost").click(function (e) {
            e.preventDefault();

            $("#form1").submit();
        })
    })
</script>

$(函数(){
$(“#a#u formpost”)。单击(函数(e){
e、 预防默认值();
$(“#表格1”).submit();
})
})

这样做的目的是什么?嗨@crayden,关于这个案例有什么更新吗?如果答案确实有助于实现您的要求,请接受它-请参阅@FeiHan希望在服务器上找到解决方案。下面的答案在客户端(JavaScript)上。不理想。