0
public class BaseController : Controller
{
    public string UserId { set; get; } 
    public string AccessToken { set; get; }

    private readonly IUnitOfWork _unit;

    public BaseController(IUnitOfWork unit)
    {
        _unit = unit;
    }

    protected override void OnActionExecuting(ActionExecutingContext filterContext)
    { 
        UserId = Session["_UserId"] as string; 
        AccessToken = Session["_AccessToken"] as string;
        // ......
    }
 }

即使 AccessToken 返回值。UserId 即将到来,null即使我可以调试并看到Session对象中有一个值。

我在会话中设置它们:

        Session.Add("_UserId", user.Id);
        Session.Add("_AccessToken", user.AccessToken);

这是怎么回事?

4

1 回答 1

3
UserId = Session["_UserId"] as string; 

看起来键“_UserId”的值不是字符串 - 因此您得到null结果。

于 2012-10-07T02:09:15.893 回答