J'ai le code suivant qui était ok jusqu'à ce que quelqu'un d'autre mette un autre code dans le site qui sorta muck it up maintenant.MVC ASP.net session est null
Ceci est mon code:
var existingContext = HttpContext.Current;
var writer = new StringWriter();
var response = new HttpResponse(writer);
var context = new HttpContext(existingContext.Request, response) { User = existingContext.User };
HttpContext.Current = context;
HttpContext.Current.SetSessionStateBehavior(System.Web.SessionState.SessionStateBehavior.Default);
HttpContext.Current.Session["Test"] = "test";
for (Int32 i = 0; i < existingContext.Session.Count; i++)
{
HttpContext.Current.Session.Add(existingContext.Session.Keys[i], existingContext.Session[i]);
}
L'idée sous-jacente est de pouvoir capturer la sortie d'une vue et le rendre au format pdf. Maintenant, mon seul problème est que lorsque j'attribue un contexte à HttpContext.Current, la session est nulle. J'ai besoin de pouvoir initialiser la session pour pouvoir y assigner des variables.
Je vais aussi ajouter que cela est dans une classe statique
public static class ControllerExtensions
Des indices?
désolé la chose vue de code mucked un peu ou je l'ai fait quelque chose de mal le code devrait être: –
var existingContext = HttpContext.Current; var writer = new StringWriter(); var réponse = new HttpResponse (writer); var context = new HttpContext (existingContext.Request, réponse) {Utilisateur = existingContext.User}; HttpContext.Current = context; HttpContext.Current.Session ["Test"] = "test"; pour (Int32 i = 0; i