Переход на главную страницу после входа в систему - PullRequest
0 голосов
/ 05 марта 2020

Я создаю серверное приложение с помощью Blazor. Я не использую какие-либо javascript, реагировать и другие рамки. Я использую шаблон Blazor по умолчанию. Когда я go на странице входа в систему и введите правильные учетные данные, я хочу перейти на домашнюю страницу. Для этого я использую следующий код:

  public void LoginCommand()
            {
                var authenticationStatProvider = new TaskClientAuthenticationStateProvider();

                if (this.Username == "Lyubo" && this.Password == "123")
                {
                    TaskClientAuthenticationStateProvider.IsAuthenticated = true;

                    authenticationStatProvider.NotifyAuthenticationStateChanged();

                    NavigationManager.NavigateTo($"/home/{this.Username}");
                }
            }

Я отделил представление от logi c в двух файлах, если это имеет значение, и мой LoginPageBase наследует ComponentBase. После выполнения вышеприведенного кода я вижу, что возвращается домой .

@page "/home"
@page "/home/{userName}"
@inherits LayoutComponentBase


<div class="sidebar ">
    <NavMenu />
</div>

<div class="main">
    <div class="top-row px-4">
        <NavLink class="nav-link" href="loginpage">
            <span class="oi oi-plus" aria-hidden="true"></span> Login
        </NavLink>
    </div>

    <div class="content px-4">
        @Body
    </div>
</div>

@code{
    [CascadingParameter]
    public Task<AuthenticationState> AuthenticationStateTask { get; set; }

    [Parameter]
    public string userName { get; set; }
}

Кажется, что я каким-то образом дублирую (потому что я не перемещаюсь только на @Body, а на всю домашнюю страницу) главную страницу, и я не могу понять, как исправить это поведение? Как я могу разместить свой вид в @Body с другой страницы? Спасибо:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...