Я создаю приложение ASP.NET MVC 4, используя стек стека MVC-пакета службы, используя службы auth и сеанса стека служб. Я копирую много логики из проекта API социальной загрузки. Мои контроллеры наследуют от следующего базового контроллера:ServiceStack Session всегда null в MVC-контроллере
public class ControllerBase : ServiceStackController<CustomUserSession>
, который реализуется как:
public class ControllerBase : ServiceStackController<CustomUserSession> {}
CustomUserSession
наследует от AuthUserSession
:
public class CustomUserSession : AuthUserSession
После того как я войти, мои CustomUserSession
OnAuthenticated()
пробегов метод , но когда я перенаправляюсь обратно к контроллеру, UserSession
не является популяром например,
public override void OnAuthenticated(IServiceBase authService, IAuthSession session, IOAuthTokens tokens, Dictionary<string, string> authInfo)
{
base.OnAuthenticated(authService, session, tokens, authInfo);
CustomFoo = "SOMETHING CUSTOM";
// More stuff
}
public class MyController : ControllerBase
{
public ActionResult Index()
{
// After having authenticated
var isAuth = base.UserSession.IsAuthenticated; // This is always false
var myCustomFoo = base.UserSession.CustomFoo; // This is always null
}
}
Может ли кто-нибудь увидеть, что мне здесь не хватает?
спасибо за предложение, но не повезло. в этот момент сеанс заполняется, я просто не могу его прочитать, используя свойство UserSession ServiceStackController. Однако я обнаружил, что я вижу заполненный пользовательский сеанс, если я использую свойство ICacheClient Cache. возможно, проблема с расширением метода SessionAs? собираюсь вытащить источник, чтобы посмотреть, что там происходит – pjacko