是否可以在.NET Standard项目中的会话中设置和获取价值

时间:2019-06-19 09:52:38

标签: c# asp.net-mvc session .net-standard

我需要在.NET Standard项目中设置会话变量,还需要从.NET Framework项目以及.NET Framework项目中获取值。我无法在.NET Standard中看到Httpcontext。另外,我找不到在.net标准项目中使用会话的任何方法。

如何在.NET Standard项目中设置会话变量值,并在.NET Standard和.NETFramework项目中获取它的值?

我找到了以下网址: HttpContext in .net standard library 使用Microsoft.AspNetCore.Http.Abstractions进行了尝试,但会话仅接受byte []类型。

1 个答案:

答案 0 :(得分:0)

直接访问会话状态的业务逻辑库不是一个好的架构。业务逻辑代码甚至不必关心它是在Web应用程序中运行还是在其他类型的应用程序中运行。

创建更好的抽象。在您的库中声明一个接口ISession,其中包含您要使用的所有方法。然后为使用您的库的应用程序提供一种机制,以提供ISession的实际实现。

在您的Web应用程序中,使用.net Framework中的ASP.net会话概念编写一个实现ISession的类。