【发布时间】:2016-05-04 16:08:35
【问题描述】:
我有一个带有几个类库 (.NET 4.6.1) 的 ASP.NET MVC 6 应用程序。现在我想在 asp.net 应用程序和类库之间传递值。例如,我想从类库中访问 UserId(在会话中)。我不想使用参数来传递值,因为 UserId 是我的类库中的全局变量,并且我没有来自类库中 Web 应用程序的引用。解决这个问题的最佳方法是什么?
- 在类库中使用会话?
- 使用共享内存?
- 使用网络服务?
- 使用数据库?
- ... ?
更新: https://stackoverflow.com/a/2040623/2455393 说我们可以使用这个:
using System.Web;
var currentSession = HttpContext.Current.Session;
var myValue = currentSession["myKey"];
在 .NET 4.6.1 (MVC 6) 中它不起作用。但在 .NET 4.0 中它运行良好。这是我的问题。
【问题讨论】:
-
"I don't have a reference from web application in the class library"- 那么应用程序如何首先引用该代码?我不太清楚你想在这里做什么。 -
在我看来这对 ClaimsIdentity 很有用。
-
很清楚。类库不依赖于 Web 应用程序。但是 Web 应用程序使用了类库。在 .NET 4.0 中,我使用 HttpContext.Request.Session 来访问两者之间的共享数据。
标签: asp.net session asp.net-core-mvc class-library