我需要在.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 []类型。
答案 0 :(得分:0)
直接访问会话状态的业务逻辑库不是一个好的架构。业务逻辑代码甚至不必关心它是在Web应用程序中运行还是在其他类型的应用程序中运行。
创建更好的抽象。在您的库中声明一个接口ISession
,其中包含您要使用的所有方法。然后为使用您的库的应用程序提供一种机制,以提供ISession
的实际实现。
在您的Web应用程序中,使用.net Framework中的ASP.net会话概念编写一个实现ISession
的类。