Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Palavras chave

Últimos assuntos
» Material de estudos - atualizado
Sex Ago 26, 2016 5:13 pm por Admin

» Resolucao do Lab1 do Modulo 3
Qui Ago 11, 2016 9:12 am por Admin

» Roteiro – Treinamento ASP.NET MVC Avançado
Qui Ago 04, 2016 5:40 pm por Admin

» Atualização do .Net Framework disponível para download
Qui Ago 04, 2016 4:58 pm por Admin

» Atualização do .Net Framework Disponivel para download
Qui Ago 04, 2016 4:57 pm por Admin

» Exercicios de férias
Ter Ago 02, 2016 1:47 pm por Admin

» Projeto HandsOn disponivel para download + Atividades de férias
Qui Jul 07, 2016 5:27 pm por Admin

» exemplo de datepicker com jQuery UI
Sex Jul 01, 2016 5:52 pm por Admin

» exempolo para gerenciar sessao
Sex Jul 01, 2016 5:24 pm por Admin

Setembro 2017
SegTerQuaQuiSexSabDom
    123
45678910
11121314151617
18192021222324
252627282930 

Calendário Calendário

Os membros mais marcados


exempolo para gerenciar sessao

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

exempolo para gerenciar sessao

Mensagem por Admin em Qui Jun 30, 2016 10:10 pm

List<PedidoProduto> _ItensPedidoAtual;
private List<PedidoProduto> ItensPedidoAtual
{
get
{
_ItensPedidoAtual = (List<PedidoProduto>)Session["ProdutosPedidoAtual"];
if (_ItensPedidoAtual == null)
{
_ItensPedidoAtual = new List<PedidoProduto>();
Session["ProdutosPedidoAtual"] = _ItensPedidoAtual;
}
return _ItensPedidoAtual;
}
set
{
Session["ProdutosPedidoAtual"] = value;
_ItensPedidoAtual = value;
}
}

Admin
Admin

Mensagens : 52
Data de inscrição : 21/04/2016

Ver perfil do usuário http://aspnet01.forumbrasil.net

Voltar ao Topo Ir em baixo

Re: exempolo para gerenciar sessao

Mensagem por Admin em Sex Jul 01, 2016 5:24 pm

Pessoal, como sabermos que ao criar pedidos, o novo pedido fica "em cache" seria uma boa pratica utilizarmos uma classe que cuidasse das questões de cache, para que o controller tenha função exclusiva de tratar requisições e respostas.

Neste caso, segue uma classe chamada CacheManager. A ideia é substituirmos tudo que envolve cache nas Controllers com a chamada desta classe.

Com vocês notarão o código ficará mais organizado:



using MasterChild.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MasterChild.Web.Helper
{
public class CacheManager
{

private static System.Web.SessionState.HttpSessionState Session
{
get
{
return HttpContext.Current.Session;
}
}

public static Pedido PedidoAtual
{
get
{
return (Pedido)Session["PedidoAtual"];
}
set
{
Session["PedidoAtual"] = value;
}
}

public static bool AdicionarItemAoPedidoAtual(PedidoProduto item)
{
item.PedidoProdutoId = Interador();
PedidoAtual.Itens.Add(item);
return true;
}

public static PedidoProduto LocalizarItem(Func<PedidoProduto,bool> predicado)
{
var item = PedidoAtual.Itens.Where(predicado).FirstOrDefault();
return item;
}

private static int Interador()
{
if (Session["Interador"] == null) Session["Interador"] = 0;
int posItem = (int)Session["Interador"];
posItem++;
Session["Interador"] = posItem++;
return posItem;
}

}
}

Admin
Admin

Mensagens : 52
Data de inscrição : 21/04/2016

Ver perfil do usuário http://aspnet01.forumbrasil.net

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum