如何在 Blazor 应用中导航到 ASP.NET 核心 MVC 控制器?



DownloadController.cs使用以下方法Controllers/DownloadController

public async Task<ActionResult> DownloadFile(string key) 
{
return File(...);
}

此外,在我的Startup.cs中,我配置了以下端点:

app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default".
pattern: "{controller}/{action}");
endpoints.MapControllers();
endpoints.MapBlazorHub();
endpoints.MapFallbackToPage("/_Host");
});

那么,如何在 Blazor 视图中导航到控制器操作呢?我正在寻找类似的东西:

@Html.ActionLink(...);

这应该可以:

@page "/MvcLinkExample"
@inject NavigationManager NavigationManager
<button @onclick="NavigateToMvcPage">MVC Link</button>
@code {
private void NavigateToMvcPage()
{
NavigationManager.NavigateTo("controllername/actionname/10", true);
}
}

MVC 使用"路由"来配置端点(控制器/操作/区域(映射。

在您提供的示例中,路由将解析为 http(s(://[主机名或 ip]/Download/DownloadFile/。

使用"默认路由",可以通过 ?key=[value-xxx] 提供"key"查询字符串参数作为基本实现。

相关内容

  • 没有找到相关文章

最新更新