J'ai 2 projets dans ma solution.ASP.Net MVC: Comment accéder à la session à partir d'un projet différent dans la solution?
- MVC application Web
bibliothèque de classe
- L'application Web MVC fait référence à la bibliothèque de classes.
- La bibliothèque de classes contient une classe qui étend le contrôleur ASP.Net par défaut.
Je mets une variable en session dans Global.asax de l'application.
protected void Session_Start(object sender, EventArgs args)
{
HttpContext.Current.Session["DomainName"] = Request.Url.Host;
}
Dans la bibliothèque de classes que je suis en train d'obtenir la valeur de la HttpContext.Session, mais HttpContext.Session revient sans cesse nul.
public class MyController : System.Web.Mvc.Controller
{
public MyController() : base()
{
//HttpContext.Session is always null at this point
ViewData["DomainName"] = HttpContext.Session["DomainName"];
}
}
HttpContext. Current .Session ne semble pas être une option dans les contrôleurs. Des idées?
Merci Craig, oui, je réalise que je peut simplement référencer la session directement dans ce cas. J'avais l'habitude de référencer le contexte tout d'abord dans un projet séparé lorsque je fais des WebForms. :) Oui, je sais que je peux lire Request.Url.Host directement, mais c'était plus d'un genre principal d'une question de la façon de le faire période. Merci encore pour vos commentaires. –