婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > ASP.NET如何使用web服務的會話狀態

ASP.NET如何使用web服務的會話狀態

熱門標簽:安陸市地圖標注app 寧德防封版電銷卡 云南外呼系統代理 辦公用地圖標注網點怎么操作 上海市三維地圖標注 西寧電銷外呼系統公司 海東防封電銷卡 南昌自動外呼系統線路 聊城智能電銷機器人電話

在web服務中要用到ASP.NET中的會話對象,有2件事情需要做。

  1.WebService 類需要繼承System.Web.Services.WebService類

  2.WebMethod中的EnableSession屬性值應該設置為true

  來看我們CalculatorWebService類,我們可以看到,它已經繼承System.Web.Services.WebService類。但是,我們需要EnableSession屬性值設置為true。

  本文中,我們將試試在使用一個如下所示的GridView中的會話對象來展示最近的計算結果.

  為了達成這個目的,首先要想下面這樣,修改CalculatorWebService類的Add方法.

[WebMethod(EnableSession = true)]
  public int Add(int firstNumber, int secondNumber)
  {
   Liststring> calculations;
 
   if (Session["CALCULATIONS"] == null)
   {
    calculations = new Liststring>();
   }
   else
   {
    calculations = (Liststring>)Session["CALCULATIONS"];
   }
    
   string strTransaction = firstNumber.ToString() + " + "
    + secondNumber.ToString() 
    + " = " + (firstNumber + secondNumber).ToString();
   calculations.Add(strTransaction);
   Session["CALCULATIONS"] = calculations;
 
   return firstNumber + secondNumber;
  }

  然后再引入另外一個公共方法來返回所有的計算結果. 要使用WebMethod特性來修飾這個方法,并且將EnableSession屬性設置為true.

[WebMethod(EnableSession = true)]
  public Liststring> GetCalculations()
  {
   if (Session["CALCULATIONS"] == null)
   {
    Liststring> calculations = new Liststring>();
    calculations.Add("You have not performed any calculations");
    return calculations;
   }
   else
   {
    return (Liststring>)Session["CALCULATIONS"];
   }
  }


  現在就可以構建我們的解決方案了,并能在瀏覽器中查看到我們的Web服務.

  Web服務會列出兩個方法——Add和GetCalculations.

  點擊Add方法。讓我們輸入兩個數字,比如20和30,然后點擊Invoke按鈕,我們會得到50這個結果.

  讓我們來做另外一次計算,比如30和70。然后點擊Invoke按鈕,我們將會得到結果為100.

  現在讓我們回頭來測試一下我們的GetCalculation方法。然后點擊Invoke方法,現在回展示出我們之前所做的所有計算。它們會以一個字符串數組的形式返回.

  如此我們的Web服務就這樣按照預期運作了。現在讓我們來試試在我們的Web應用程序中使用這些方法。為此,在 Webform1.aspx 中, 讓我們往其中拽一個GridView控件進去.

tr>
 td>
  asp:GridView ID="gvCalculations" runat="server">
  /asp:GridView>
 /td>
/tr>

  在文件修改之后的代碼之前,我們需要更新一下代理類。為此,在CalculatorService并選擇Update Service Reference.

  此后,在btnAdd_Click事件代碼段之中, 加入如下幾行代碼.

gvCalculations.DataSource = client.GetCalculations();
   gvCalculations.DataBind();
 
   gvCalculations.HeaderRow.Cells[0].Text = "Recent Calculations";

  構建我們的解決方案,并在瀏覽器中查看這個web窗口.

  讓我們繼續加入兩個數字,比如20和30. 而我們會看到雖然我們已經執行了一次計算, You have not performed any calculations 這樣的消息還是將會顯示出來.

  這基本上是因為web應用程序并沒有像Web服務發送相同的SessionId。為此,將web.config文件中的allowCookie設置成true.

  現在我們再來運行這個web窗口并添加一些數字。現在我們就可以看到它按照預期運行了.

  因此,這下面有幾點要深入思考:

如果Web服務被修改了,客戶端應用程序的代理類就要被更新. 為此,在Service Reference夾下面的服務上點擊右鍵,并選擇Update Service Reference項.

將allowCookies屬性設置成true,以便讓客戶端應用程序接受從ASMX Web服務返回的cookie,并將其復制到未來所有項Web 服務發起的請求中去. 這就確保了客戶端和Web服務之間是維護的同一個Session。

如何使用web服務的會話狀態,相信通過這篇文章大家應該有所了解了吧。

您可能感興趣的文章:
  • ASP.NET+Web服務實現軟件共享
  • asp.net配置會話狀態Session實現代碼
  • ASP.NET Session對象保持會話使用說明
  • ASP.NET自定義Web服務器控件之Button控件
  • ASP.NETWeb服務器驗證控件如何使用
  • ASP.NET如何使用web服務的會話狀態

標簽:贛州 洛陽 平涼 衢州 南寧 崇左 青海 汕尾

巨人網絡通訊聲明:本文標題《ASP.NET如何使用web服務的會話狀態》,本文關鍵詞  ASP.NET,如何,使用,web,服務,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ASP.NET如何使用web服務的會話狀態》相關的同類信息!
  • 本頁收集關于ASP.NET如何使用web服務的會話狀態的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 保德县| 瑞昌市| 蓬溪县| 苏尼特右旗| 环江| 宜昌市| 东台市| 溧阳市| 新邵县| 龙口市| 景德镇市| 湄潭县| 城步| 镇雄县| 龙游县| 阿城市| 水城县| 白银市| 抚远县| 鞍山市| 三亚市| 博客| 罗山县| 高要市| 龙里县| 禄丰县| 民勤县| 贵南县| 澄迈县| 竹溪县| 临猗县| 西和县| 安多县| 当阳市| 沧州市| 女性| 永泰县| 财经| 绩溪县| 紫金县| 和政县|