none
HttpContext.Current.Session Não esta me retornando um valor RRS feed

  • Pergunta

  • Olá, estou com um problema, estou no momento de login adicionando todos os grupos ao qual o usuário pertence a uma sessão, só que quando vou recolher o conteudo da mesma, ela me apresenta uma erro NullReferenceException .

    Nesse page_load eu estou carregando a sessão:

    List<string> UserGroups = new List<string>();
                    using (var service = new ESys.Intranet.Services.Dashboard.SolutionGroupService())
                    {
                        var grupos = service.GetInformationOfAllGroups(user);
                        all.GroupsInfo = service.GetInformationOfAllGroups(user);
                        System.Text.StringBuilder script = new System.Text.StringBuilder();
                        foreach (var info in all.GroupsInfo)
                        {
                            if (info != null)
                                UserGroups.Add(info.Description);
                        }
                        script.AppendLine("<script>");
                        script.AppendLine(" function getChannels(){  \n");
                        script.AppendLine("var pusher = new Pusher('54bc175e132eea1a9392'); \n");
                        script.AppendLine();
                        foreach (var item in UserGroups)
                            script.AppendLine("var " + item.ToString().Replace(" ", "") + " = pusher.subscribe('" + item.ToString().Replace(" ", "") + "'); \n");
                        script.AppendLine("}");
                        script.AppendLine("</script> \n");
                        script.AppendLine("<script type='text/javascript'> \n");
                        foreach (var item in UserGroups)
                        {
                            script.AppendLine(" " + item.ToString().Replace(" ", "") + ".bind('" + item.ToString().Replace(" ", "") + "', function(data) { \n");
                            script.AppendLine("if(data!=null) { \n");
                            script.AppendLine("alert(data.message); \n }");
                            script.AppendLine("}); \n");
                        }
                        script.AppendLine("</script>");
                        ScriptManager.RegisterStartupScript(Page, Page.GetType(), "myscript", Convert.ToString(script), true);
                        //adicionei a uma sessao
                        HttpContext.Current.Session.Add("Channels",UserGroups);

    e no final do método eu adiciono dentro da sessao Channels a List<string> UserGroups, porém na hora de recuperar ele me apresenta o erro:

    Tem alguma coisa que eu tenho que ativar para que a aplicação suporte sessao ??

    Atenciosamente

    Marcus Fernando

    terça-feira, 23 de julho de 2013 17:55

Respostas

  • Sim você deve importar o namespace :

    System.Web.SessionState

    E implementar  a interface :

    IRequiresSessionState

    Tudo isso no arquivo .ashx

    Ficando assim a sua classe :

    using System.Web.SessionState

    public class NotifyGroup : IHttpHandler, IRequiresSessionState


    Davi Murilo Referência Principal : Jesus que ilumina minha mente.
    Referência Profissonal : http://www.tidm.com.br


    • Editado Davi Murilo quarta-feira, 24 de julho de 2013 11:43 Implemento
    • Marcado como Resposta marcusfcbarbosa segunda-feira, 29 de julho de 2013 12:07
    quarta-feira, 24 de julho de 2013 11:39

Todas as Respostas

  • Sim você deve importar o namespace :

    System.Web.SessionState

    E implementar  a interface :

    IRequiresSessionState

    Tudo isso no arquivo .ashx

    Ficando assim a sua classe :

    using System.Web.SessionState

    public class NotifyGroup : IHttpHandler, IRequiresSessionState


    Davi Murilo Referência Principal : Jesus que ilumina minha mente.
    Referência Profissonal : http://www.tidm.com.br


    • Editado Davi Murilo quarta-feira, 24 de julho de 2013 11:43 Implemento
    • Marcado como Resposta marcusfcbarbosa segunda-feira, 29 de julho de 2013 12:07
    quarta-feira, 24 de julho de 2013 11:39
  • Obrigado!!, era isso mesmo!!
    segunda-feira, 29 de julho de 2013 12:07