加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 使用WebMethods和session时的最佳实践

发布时间:2020-12-15 19:57:21 所属栏目:asp.Net 来源:网络整理
导读:我想在我的一个应用程序页面中减少回发并使用ajax.我使用WebMethod这样做.我有一个静态的WebMethod需要访问会话变量并进行修改.在客户端,我使用jQuery调用此方法.我尝试按如下方式访问会话: [WebMethod] public static void TestWebMethod() { if (HttpCont
我想在我的一个应用程序页面中减少回发并使用ajax.我使用WebMethod这样做.我有一个静态的WebMethod需要访问会话变量并进行修改.在客户端,我使用jQuery调用此方法.我尝试按如下方式访问会话:
[WebMethod]
    public static void TestWebMethod()
    {
        if (HttpContext.Current.Session["pitems"] != null)
        {
            log.Debug("Using the existing list");
            Product prod = (Product)HttpContext.Current.Session["pitems"];
            List<Configs> confs = cart.GetConfigs();
            foreach (Configs citem in confis)
            {
                log.Info(citem.Description);
            }


        }
        log.Info("Inside the method!");
    }

值正确显示并且似乎有效..但我想知道是否允许这种做法,因为该方法是静态方法,并且想知道如果多人访问应用程序它将如何表现.

我还想知道如果这不是正确的方法,开发人员如何在ASP中执行这些任务.

提前感谢您的建议和想法,
阿卜杜勒·奥拉卡拉

解决方法

静态方法使用起来非常安全.一些人遇到跨越请求共享字段的问题只发生在静态字段中,因为它们确实在同一进程中共享.

我认为你的方法是解决这个问题的好方法.这正是Web方法的用途.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读