.NET Core Blazor App:如何在页面之间传递数据?

asp.net-core asp.net-core-2.0 blazor html

我刚开始学习如何使用Blazor模板制作网站。但我不知道如何将数据从一个页面传递到另一个页面。它与.NET CORE MVC Web应用程序有点不同,我找不到这样的例子。

    <p>Solve This problem: @rnd1 * @rnd2 = ?</p>

    <input type="text" name="result" bind="@result" />
    <input type="button" onclick="@calculate" value="Submit" />

我想将文本框中的值发送到另一个页面。我怎样才能做到这一点?

一般承认的答案

您可以将其作为参数传递。

在要导航到的页面中,将参数添加到路线中:

@page "/navigatetopage/{myvalue}"

并确保该页面中存在该参数:

[Parameter] private string myvalue{ get; set; }

在同一页面中,您可以选择:`

protected override void OnParametersSet() { //the param will be set now var test = myvalue; }

现在在您的开始页面中确保导航到包含值的第二页:

uriHelper.NavigateTo($"/navigatetopage/{result}");

那个uriHelper需要像这样注入:

@inject Microsoft.AspNetCore.Blazor.Services.IUriHelper uriHelper



许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow