ASP. Net Core Blazor: Как загрузить разные файлы _Host.cs html в зависимости от значения заголовка - PullRequest
2 голосов
/ 31 марта 2020

Я бы хотел загрузить файл _Host.cshtml в ASP. NET проекте Core Blazor (на стороне сервера Blazor) на основе заголовка в запросе.

Например:

Клиент подключается к example.com и перенаправляется в файл _Host.cshtml, специфицирующий c для арендатора A. Другой клиент подключается к test.com и перенаправляется в _Host.cshtml файл, специфицирующий c для арендатора B .

Файл _Host.cshtml выглядит примерно так:

@page

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
    <meta http-equiv="content-type" content="text/html;charset=UTF-8" />
    <meta charset="utf-8" />
    <title>ProjectName</title>
    <link rel="icon" type="image/png" sizes="32x32" href="images/tenantA/favicons/favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="images/tenantA/favicons/favicon-16x16.png">
</head>
<body class="something">
    <app>
        @(await Html.RenderComponentAsync<App>(RenderMode.Server))
    </app>

    <script src="_framework/blazor.server.js"></script>
    <link href="css/tenantA/site.css" rel="stylesheet" />
</body>
</html>

В файле _Host.cshtml ссылка на tenantA должна быть установлена ​​на основе вышеуказанного выбора арендатора из URL арендатора, как описано выше. Возможно ли это, и если да, то как этого достичь?

1 Ответ

2 голосов
/ 31 марта 2020

Это одно из возможных решений,

В _Host.cs html

Вы можете перенаправить на любой _HostX.cs html с помощью динамической c строки logi c

@page "/"
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

@if(Request.Query["test"].FirstOrDefault()=="1")
{
    Html.RenderPartial("_Host2.cshtml",null,ViewData);
    return;
}

<!DOCTYPE html>
<html lang="en">
<head>
....
...
..
.

Это проверено.

Вы можете изменить оператор условия, чтобы он соответствовал вашему случаю.

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