Мне нужно получить доступ к UserId от всех моих ASP.NET MVC приложения для того, чтобы использовать его для скрытия/показать некоторые элементы:Как разделить переменную между представлениями ASP.NET MVC
идента первичный ключ пользователя таблицы (на SQL-сервере).
в нормальном asp.net я использовал BasePage: Страница и добавил:
public long FinKaynUserId
{
//long FinKaynUserId = 0;
get
{
if (HttpContext.Current.Session["FinKaynUserId"] != null && Convert.ToInt64(HttpContext.Current.Session["FinKaynUserId"]) != 0)
return Convert.ToInt64(HttpContext.Current.Session["FinKaynUserId"]);
else
{
HttpCookie myCookie = HttpContext.Current.Request.Cookies["FinKaynUserId"];
if (myCookie != null)
{
HttpContext.Current.Session["FinKaynUserId"] = Convert.ToInt64(myCookie.Value);
// Session["User"] = (new UserManager()).GetUser(Convert.ToInt64(Session["UserId"]));
return Convert.ToInt64(HttpContext.Current.Session["FinKaynUserId"]);
}
else
return 0;
}
}
set
{
HttpCookie cookie = new HttpCookie("FinKaynUserId");
cookie.Value = value.ToString();
cookie.Secure = false;
cookie.Expires = DateTime.Now.AddDays(3);
HttpContext.Current.Request.Cookies.Add(cookie);
HttpContext.Current.Session["FinKaynUserId"] = value;
}
}
Как я могу сделать то же самое в ASP.NET MVC.
я хочу поделиться UserId между видами .Ели сессию истек, проверь кук , –
Вот еще одно соответствующее сообщение с рекомендациями MVC: http://stackoverflow.com/questions/5286301/how-do-you-access-application-variables-in-asp-net-mvc-3-razor-views –
Вы все еще могут использовать переменные Session в приложениях ASP.NET MVC, но я предлагаю использовать встроенную asp.net FormsAuthentication вместо управления сессиями и куки-файлами самостоятельно – sos00