1. 程式人生 > >.net 呼叫webservice介面

.net 呼叫webservice介面

1.呼叫已有webservice,實現天氣查詢

2.建立一個簡單的webservice,實現服務介面呼叫

  因為兩個例項在一個專案中呈現的,就綜合一點來記錄,為以後自己需要用時做準備。

  首先,來看下專案的目錄結構

  對於初學者來說,在vs2012環境中,大家有可能不知道Web References資料夾是如何來的,它是通過右擊專案,選擇其中的”新增服務引用“,如圖所示:

  之後,得到”新增服務引用“的頁面,我也把圖截了下來,如圖:

  

  再選擇”高階“按鈕,進入下圖

  通過點選按鈕,系統會輸出使用者所填城市的天氣資訊。後臺程式碼如下:

View Code

  這樣,通過呼叫已有的天氣介面,就可以實現城市天氣的查詢了。

  下面,我們再來說說,如何自己建立webservice,通過它來實現一些功能,首先,我們選中一個專案,右擊新建一個“Web服務”,如下圖所示:

  完成建立以後,就會在專案檔案中出現“Service.asmx”檔案,我們在Service.asmx.cx中新增一個簡單的求和方法,程式碼如下:

複製程式碼
namespace Web_Service
{
    /// <summary>
    /// WebService1 的摘要說明
    /// </summary>
    [WebService(Namespace = "
http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // 若要允許使用 ASP.NET AJAX 從指令碼中呼叫此 Web 服務,請取消註釋以下行。 // [System.Web.Script.Services.ScriptService] public class WebService1 : System.Web.Services.WebService { [WebMethod]
public string HelloWorld() { return "Hello World"; } [WebMethod] public int GetSum(int a,int b) { return a+b; } } }
複製程式碼

  那麼,我們怎麼在其它專案中呼叫這個方法呢,其實這和剛才我們所說的,呼叫天氣的webservice是一個道理,首先,通過新增“web服務引用”將,你寫的webservice引用進來,我們需要注意的是其中有一處要我們填寫請求webservice的URL地址,我們該怎麼寫?其實呢,也很簡單,就是,你將Service.asms在瀏覽器中瀏覽的地址,如我的是:http://localhost:12197/Service.asmx。

  引用完成後,我們通過程式碼來實現它,首先還是來看下執行後的效果圖:

 

  最後,再貼上程式碼:

複製程式碼
 protected void Button1_Click(object sender, EventArgs e)
{
            WebApplication1.localhost.WebService1 aa = new WebApplication1.localhost.WebService1();
            this.Label1.Text = aa.GetSum(Convert.ToInt32(this.TextBox1.Text), Convert.ToInt32(this.TextBox2.Text)).ToString();
}
複製程式碼

  至此,要講的內容都講完了,希望對自己和初學的你有幫助,大神們就略過吧。

轉載自:http://www.cnblogs.com/peterpc/p/4628441.html