首页 > 解决方案 > 如何存储与 Blazor 服务器电路相关的数据?

问题描述

我在 Blazor Server 应用程序中重用旧的 WinForms 客户端代码。问题是 WinForms 代码需要一些具有状态的静态变量,这些变量在应用程序启动时创建,然后在任何地方使用。

我想用静态属性替换这些静态变量,这些静态属性将数据存储在 WinForms 的静态变量中以及与 Blazor 服务器的电路相关的某种数据存储中。

我很高兴使用 HttpContext,但它似乎只在开发中有效,在生产中无效。对于 Blazor 电路,是否有与 HttContext 等效的东西?也许是一个存储数据的字典?或者至少是获取电路 ID 的静态属性?

编辑澄清:

例如,当用户登录时分配此静态属性

public class UserData
{
   public static int Id { get; set; }
   public static string Name { get; set; }
}

我希望将其更改为:

public static int Id
{ 
    get
    {
        return (int)httpContext.Items["UserId"];
    }
    set
    {
        httpContext.Items["UserId"] = value;
    }
}

这些静态值在旧代码中随处使用。

标签: blazorblazor-server-side

解决方案


推荐阅读