У меня есть вспомогательный класс для сессиииспользование сеансов в MVC
namespace ShopCart.BAL
{
public static class SessionHelper
{
public static ShopUser myShopUser
{
get
{
return HttpContext.Current.Session["myShopUser"] as ShopUser;
}
set
{
HttpContext.Current.Session["myShopUser"] = value;
}
}
}
}
Далее класс ShopUser выглядит
public class ShopUser
{
public string LoginID { get; set; }
public string SessionID { get; set; }
public long UserId { get; set; }
public long ShoppingCartId { get; set; }
public bool? Status { get; set; }
}
Теперь я хочу знать, как установить сеанс для конкретного свойства? SessionHelper.Status = false; // создает новое свойство в SessionHelper Как использовать классы выше для создания сеансов?
@mohsen Ваш ответ правильный. Кроме того,
public ActionResult Index() {
ShopLogin objShopLogin = new ShopLogin();
objShopLogin .checkUser();
}
public class ShopLogin {
public string checkUser()
{
SessionHelper.myShopUser.Status = false;
}
}
Так как вы можете видеть, я создаю объект класса здесь, как ShopLogin objShopLogin = новый ShopLogin(); Можете ли вы сказать мне, могу ли я использовать инъекцию зависимостей здесь, чтобы избежать создания таких объектов класса?
Благодаря @mohsen, это работает. Можете ли вы сказать мне, как добавить инъекцию зависимостей (nInject), так что мне не нужно создавать «новый» объект. ShopUser objShopUser = новый ShopUser(); public string checkUser() { SessionHelper.myShopUser.Status = false; } –
public Показатель действительного действия() { ShopUser objShopUser = новый ShopUser(); objShopUser.checkUser(); } А потом общественный класс Логин { строка CheckUser общественности() { SessionHelper.myShopUser.Status = ложь; } } Я хочу, чтобы избежать создания объекта класса, как 'ShopUser objShopUser = новый ShopUser()' Могу ли я использовать инъекции зависимостей здесь (Ninject), чтобы избежать создания нового объекта и достижения той же функциональности –
Что делать ты имеешь в виду ? – mohsen