gpt4 book ai didi

c# - 向 session 添加值时出现 NullReferenceException

转载 作者:行者123 更新时间:2023-12-02 05:17:22 26 4
gpt4 key购买 nike

我需要在 session 中存储一组字符串,并且我有一个通过 jQuery ajax 调用调用的 Web 方法:

[WebMethod]
public string AddIdToSession(string userId)
{
List<string> userIds = new List<string>();

if (HttpContext.Current.Session != null &&
HttpContext.Current.Session["userIds"] != null)
{
userIds = (List<string>)Session["userIds"];
userIds.Add(userId);
HttpContext.Current.Session["userIds"] = userIds;
}
else
{
userIds.Add(userId);
HttpContext.Current.Session.Add("userIds", userIds); // error here
}

return userId;
}

当我尝试将 id 添加到 session 时出现错误:

Object reference not set to an instance of an object.

我做错了吗?

最佳答案

您需要使用 EnableSession 显式启用 session 访问属性:

[WebMethod(EnableSession = true)]

请注意,您的 else 逻辑将在 HttpContext.Current.Session == null 的情况下触发,这可能是 NullReferenceException 的原因>.

关于c# - 向 session 添加值时出现 NullReferenceException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14444924/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com