我在我的解决方案中有2个项目。ASP.Net MVC:您如何从解决方案中的其他项目访问会话?
- MVC Web应用程序
类库
- 的MVC Web应用程序引用类库。
- 类库包含一个扩展默认ASP.Net控制器的类。
我把一个变量在会议应用程序的Global.asax。
protected void Session_Start(object sender, EventArgs args)
{
HttpContext.Current.Session["DomainName"] = Request.Url.Host;
}
类库中,我试图让从HttpContext.Session价值,但HttpContext.Session不断想出空。
public class MyController : System.Web.Mvc.Controller
{
public MyController() : base()
{
//HttpContext.Session is always null at this point
ViewData["DomainName"] = HttpContext.Session["DomainName"];
}
}
HttpContext。 当前 .Session似乎不是控制器中的选项。有任何想法吗?
感谢克雷格,是啊,我意识到我在这种情况下可以直接引用Session。在做WebForms时,我曾经在一个单独的项目中首先引用上下文。 :) 是的,我知道我可以直接读取Request.Url.Host,但它更像是如何做到这一点的主要问题。再次感谢您的反馈。 – 2010-02-04 16:09:15