Я хотел бы добавить два разных файла CSS на основе user_id состояния сеанса в проект ASP.NET Core Blazor (серверный Blazor).
У меня есть два файла css для пользователя 1 и 2
Например:
- Если его пользователь 1 css site1 должен быть добавлен в _Host.cshtml.
- Если его пользователь 2, css site2 должен быть добавлен в _Host.cshtml.
И user_id = 1 и Userid = 2 в P
1.var user_id = await storage.GetAsync<int>("user");
это то, как User_id берется с использованием await async. Теперь необходимо взять user_id на _host.cshtml, чтобы
На _Host.cshtml
@if(user_id ==1)
{
<link href="css/site1.css" rel="stylesheet" />
}
else if (user_id ==2)
{
<link href="css/site2.css" rel="stylesheet" />
}
Теперь я не могу использовать функцию (await storage.GetAsync (User_id);) на _host.cshtml
This is how a _Host.cshtml page looks
@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>
Теперь мне нужно получить user_id на cshtml, который ожидает вызова
@page "/"
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@if(User_id =="1")
{
<link href="css/site1.css" rel="stylesheet" />
return;
}
<!DOCTYPE html>
<html lang="en">
<head>
....
...
..
.
Этот в настоящее время останавливает мой проект. Пожалуйста, помогите мне как можно скорее
return;
из файла .cshtml, который вы показываете внизу. Затем переместите этот блокawait storage.GetAsync<int>("user");
в начало файла_Host.cshtml
в разделе@{}
ниже@page
. Получите идентификатор пользователя и используйте оператор if, который есть в<head>
, чтобы загрузить правильный css. - person Cory Podojil   schedule 08.04.2021