Вспомогательный класс для обертывания сеанса для веб-разработки MVC.NET?

В этом сообщении автор рекомендует реализовать оболочку для сеанса. для облегчения тестирования и разделения кода контроллера. Я хотел бы получить идеи о том, как реализовать для этой цели хорошую оболочку.

Я вижу, что в CodeProject есть один образец, но он выглядит намного лучше, чем то, что Я нуждаюсь.

РЕДАКТИРОВАТЬ 1:

В порядке. Благодаря Джошуа у меня есть реализация и простой вспомогательный класс сеанса. Я публикую здесь класс, чтобы узнать ваше мнение и посмотреть, добавите ли вы что-нибудь.

public interface ISessionHelper
{
    T Get<T>(string key);
}

public class HttpContextSessionHelper : ISessionHelper
{
    private readonly HttpContext _context;

    public HttpContextSessionHelper(HttpContext context)
    {
        _context = context;
    }

    public T Get<T>(string key)
    {
        object value = _context.Session[key];

        return value == null ? default(T) : (T)value;
    }
}

В контроллере у меня примерно так:

    private readonly ISessionHelper _sessionHelper;

    public HomeController(ISessionHelper session)
    {
        _sessionHelper = session;
    }

    public HomeController()
    {
        _sessionHelper = new HttpContextSessionHelper(System.Web.HttpContext.Current);
    }

person Geo    schedule 15.09.2009    source источник
comment
Как установить значение сеанса с помощью этой оболочки?   -  person jm.    schedule 14.03.2013


Ответы (1)


Один из других ответов на этот вопрос. есть комментарий к этому веб-сайту, на котором хороший простой пример обертки. Комментарий был сделан murki.

person Joshua    schedule 15.09.2009