как изменить тип объекта на странице бритвы - PullRequest
0 голосов
/ 03 июня 2019

У меня есть файл cshtml с следующим кодом

  @if (Session.CurrentUser == null)
                        {
                            <li>@Html.ActionLink("Register", "Register", "Account")</li>
                            <li>@Html.ActionLink("Login", "Login", "Account")</li>
                        }

Объект Session obj происходит из этого класса, который я создал

 public class BaseController : Controller
    {
        protected Services Services { get; private set; }
        protected new SessionWrapper Session { get { return SessionWrapper.Instance; } }
        protected ConfigWrapper Config { get { return ConfigWrapper.Instance; } }

        public BaseController()
        {
            Services = new Services();
        }
    }

, поэтому сеанс имеет тип SessionWrapper и имеетСвойство CurrentUser в нем.В моем файле cshtml Session имеет тип HttpSessionStateBase. Как мне изменить тип?Я пытался с SessionWraper.CurrentUser

1 Ответ

1 голос
/ 03 июня 2019

Попробуйте изменить имя переменной:

protected SessionWrapper sessionWrapper;

public BaseController()
        {
            Services = new Services();
            sessionWrapper = new SessionWrapper.Instance;
        }

И то же самое на странице бритвы:

@if (sessionWrapper.CurrentUser == null)

Проблема, с которой вы столкнулись, заключается в том, что Session зарезервировано

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...