2010-05-15 23 views
5

我想在我的應用程序頁面中減少回發並改用ajax。我使用WebMethod來做到這一點..我有一個靜態WebMethod需要訪問會話變量和修改。在客戶端,我使用jQuery調用此方法。我試圖訪問會話如下:正確顯示使用WebMethods和會話時的最佳實踐

[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中完成這些任務,如果這不是正確的方法。

預先感謝您的建議和想法,
阿卜杜勒Olakara

回答

4

靜態方法是完全可以安全使用。有些人在跨請求共享字段時遇到的問題僅在靜態字段發生,因爲它們確實在同一進程中共享。

我認爲你的方法是解決這個問題的好方法。這正是Web方法的用處。

+0

感謝您的回覆..讓我們看看其他人也必須對此有何評論 – 2010-05-15 10:57:33