亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

詳解Visual C#中創建Web服務的步驟

2023-05-20 20:22:29
字體:
來源:轉載
供稿:網友

引言:

微軟在其.Net戰略中,對其主推的Web服務做了大肆的宣揚?,F在,Web服務正如火如荼地發展著,相關的各項新技術層出不窮。Web服務的發展正構筑著互聯網時代美好的明天。在本文中,我將向大家介紹Web服務的一些基本知識以及如何用Visual C#一步一步地創建一個簡單的Web服務。

一.Web服務概述:

Web服務是一種新的Web應用程序分支,它們是自包含、自描述、模塊化的應用,可以發布、定位、通過Web調用。Web服務可以執行從簡單的請求到復雜商務處理的任何功能。一旦部署以后,其他Web服務應用程序可以發現并調用它部署的服務。Web服務可以把業務邏輯劃分一個一個的組件,然后在整個因特網的范圍上執行其功能。所以,它是構造分布式、模塊化應用程序的最新技術發展趨勢。

二.為什么需要Web服務?

以前,分布式的應用程序邏輯需要使用分布式的對象模型,通過使用DCOM、CORBA、RMI之類的基本結構,開發人員仍可擁有使用本地模型所提供的豐富資源和精確性,并可將服務置于遠程系統中。

當已經有中意的中間件平臺(RMI、Jini、CORBA、DCOM 等等)時,我們為什么還要為Web而煩惱呢?中間件確實提供了強大的服務實現手段,但是,這些系統有一個共同的缺陷,那就是它們無法擴展到互聯網上:它們要求服務客戶端與系統提供的服務本身之間必須進行緊密耦合,即要求一個同類基本結構。然而這樣的系統往往十分脆弱:如果一端的執行機制發生變化,那么另一端便會崩潰。例如,如果服務器應用程序的接口發生更改,那么客戶端便會崩潰。為了能擴展到互聯網運用,我們需要一種松散偶合的基本結構來解決這個問題。如此的情況下就迎來了Web服務的誕生。

三.開發環境:

1.Windows 2000 Server操作系統或Windows XP操作系統;

2..Net Framework以及Visual Studio.net開發工具。

四.創建Web服務工程:

我在這里向大家介紹一個美元到人民幣轉換的Web服務實例,該實例完成的功能相當簡單,從名字我們就能知道其中的功能。但是這也是一個非常不錯的例子,特別對于初學者,能起到很好的指導作用。在創建Web服務過程中,我們用到的是C#語言。下面就是具體的項目步驟了。

首先,打開VS.net,新建一個項目,在左邊的面板中選擇“Visual C#項目”,右邊的面板中選擇“ASP.NET Web服務”,并命名為“WebService1”,圖示如下:

Web Service
圖1

按下“確定”按鈕后,VS.net就開始幫你新建該項目,期間還可能會出現一個用來顯示Internet連接的對話框。在新建完項目后,在開發工具中會出現如下所示的界面:


圖2

因為我們要實現的是一個非常簡單的Web服務,所以我們需要的功能和我們的代碼量都很小,于是就不必去考慮上圖中的“服務器資源管理器”和“工具箱”兩個超鏈接,而可以直接點擊上圖中的“此處”鏈接進行代碼編輯,點擊后會打開代碼編輯框,圖示如下:

web service
圖3

在上面的代碼編輯框中,我們先把原有的“Hello World”Web服務的示例代碼去掉,替換成我們的代碼,最終如下:

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Web;
using System.Web.Services;

namespace WebService1
{
///


/// Service1 的摘要說明。
///
public class Service1 : System.Web.Services.WebService
{
public Service1()
{
//CODEGEN:該調用是 ASP.NET Web 服務設計器所必需的
InitializeComponent();
}

#region Component Designer generated code

//Web 服務設計器所必需的
private IContainer components = null;

///
/// 設計器支持所需的方法 - 不要使用代碼編輯器修改
/// 此方法的內容。
///
private void InitializeComponent()
{
}

///
/// 清理所有正在使用的資源。
///
protected override void Dispose( bool disposing )
{
if(disposing && components != null)
{
components.Dispose();
}
base.Dispose(disposing);
}

#endregion

// WEB 服務
// DollarConvertToRMB() 服務完成美元到人民幣的轉換
// 若要測試此 Web 服務,請按 F5 鍵

[WebMethod]
public double DollarConvertToRMB(double Dollar)
{
return ( Dollar * 8.15);
}
}
}

 

在上面的方法DollarConvertToRMB()中,我們返回的是一個double類型的值――Dollar*8.15,其中的8.15我想是不言而喻的(就是美元到人民幣的匯率)。不過現實的匯率是不固定的,而且每天都要變動,所以要根據當天實際的匯率來計算,那么我們就要連接到數據庫獲得最新的信息了。不過,這里作為一個簡單實例,我們當然不需要搞得那么復雜,所以在這里我就姑且假定匯率為1:8.15。

同時,我們還需要注意,在該Web服務的代碼中我們用到了using System.Web、using System.Web.Services等名字空間,作為Web服務開發,這些名字空間是顯然不能缺的,沒有了這些,我們就不能調用.Net框架為我們提供的開發Web服務所必須的方法和函數等,所以一定不能忘掉。

到此為止,代碼編寫已經完畢,然后把代碼文件存放在某個虛擬目錄下(通常是C:/Inetpub/wwwroot/WebService1)即可。把文件保存為Service1.asmx。Asmx文件擴展名是.NET Web服務的標記。保存文件之后,你的Web服務就準備露臉了。

五.測試Web服務:

現在準備好測試Web服務。期間你不必通過顯式的編譯全過程,只需要地在目錄下保存文件然后調用它即可。為了調用最新創建的服務,請打開你的瀏覽器并輸入服務路徑,包括Asmx文件的名字。如果你把服務放了在C:/Inetpub/wwwroot/WebService1目錄下,那么你要在瀏覽器地址欄上鍵入http://localhost/WebService1/Service1.asmx。(當然,在你使用VS.net開發時,你也可以通過Ctrl+F5直接進行Web服務的測試。)

在調用服務時會顯示一幅包含大量信息的網頁。一開始這可能會令你覺得有點糊涂:不管怎么說,你還沒有為這種服務創造過HTML網頁。其實,你根本不必創建測試網頁,因為.NET框架已經幫你這個忙了。當你直接通過瀏覽器調用Web服務時,框架就會為你產生一個網頁并通過它向你顯示Web服務的信息,同時列出所有可用的方法。下圖即是Web服務的網頁。

web service

圖4

在這個例子中列出的方法沒什么特別之處,因為僅有一個方法(DollarConvertToRMB)。鼠標點擊這個方法會顯示另一個網頁,如圖5所示。這一頁就是該特定方法的測試頁,其中包括對應方法接受的每個參數的文本框?,F在請在文本框中輸入“10”并按下“調用”按鈕。


圖5

單擊“調用”按鈕會打開一個新的瀏覽器窗口,其中顯示了一些XML代碼。這些XML代碼是由該Web服務返回的,其中包括了服務的結果。返回的XML代碼如下圖所示:



圖6

  返回的結果是一些XML代碼,可能用戶界面顯得不那么友好,但是這些結果確實不一定非要采取對用戶友好的格式,因為你通常不會從瀏覽器直接調用Web服務。相反,你往往從應用程序調用Web服務同時適當地處理返回的XML代碼。不過,也很容易從上面的代碼看出Web服務已經把10美元轉換成了81.5人民幣了。

六.總結:

  上面舉的這個例子很簡單,它完成的任務是:創建一個組件,如果組件放在Web服務器上就可以被世界上任何地方的任何人訪問??蛻舨槐匮b載COM 或DCOM;甚至也不必擁有Windows客戶程序。任何能創建HTTP連接的客戶程序都能調用Web服務并且收到結果。這種功能開辟了創建分布式應用程序、實現平臺之間互操作的全新領域。同時,我們也不難發現用VS.net開發Web服務是一件相當容易的事。有興趣的讀者可以試著開發出功能更強大的Web服務并將它賦予實際應用之中。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品中文久久久久久久| 久久久噜噜噜久久久| 91久久夜色精品国产网站| 亚洲精品久久久久久久久久久久| 中文字幕少妇一区二区三区| 亚洲免费电影在线观看| 日韩激情第一页| 久久激情视频久久| 97免费视频在线| 91av在线免费观看| 久久99热精品这里久久精品| 久久久久久久久久久网站| 欧美日韩中文字幕日韩欧美| 亚洲电影免费观看高清完整版| 久久69精品久久久久久国产越南| 欧美最猛性xxxxx免费| 欧美国产第一页| 日韩中文字在线| 国产suv精品一区二区| 欧美小视频在线| 91国产在线精品| 欧美猛少妇色xxxxx| 成人亚洲综合色就1024| 久久6精品影院| 91久久精品国产91性色| 欧美二区乱c黑人| 日韩一区二区av| 国产一区二区三区在线观看网站| 日韩国产高清视频在线| 中文日韩电影网站| 亚洲电影免费观看高清完整版| 亚洲黄一区二区| 91精品免费久久久久久久久| 奇米四色中文综合久久| 日韩**中文字幕毛片| 在线视频免费一区二区| 亚洲精品动漫久久久久| 国产aⅴ夜夜欢一区二区三区| 91sa在线看| 国产精品久久久久久久久久新婚| 亚洲伊人成综合成人网| 国产手机视频精品| 狠狠综合久久av一区二区小说| 最近2019中文免费高清视频观看www99| 性色av一区二区三区红粉影视| 国产精品综合网站| 国产成人啪精品视频免费网| 中文字幕免费精品一区高清| 久久久av电影| 欧美午夜片在线免费观看| 亲子乱一区二区三区电影| 国产精品一区二区三区毛片淫片| 高清在线视频日韩欧美| 欧美在线视频一区二区| 亚洲成人网久久久| 欧美精品情趣视频| 蜜月aⅴ免费一区二区三区| 日韩国产激情在线| 精品动漫一区二区三区| 中文字幕亚洲一区二区三区| 久久免费视频网| 欧美日韩视频免费播放| 日本亚洲欧美成人| 日韩av中文字幕在线免费观看| 亚洲欧美国产另类| 岛国视频午夜一区免费在线观看| 欧美成年人在线观看| 欧美wwwxxxx| 亚洲激情中文字幕| 啊v视频在线一区二区三区| 欧美日韩国产色视频| 欧美日本在线视频中文字字幕| 国产一区二区激情| 中日韩美女免费视频网址在线观看| 成人国产精品色哟哟| 久久久精品视频在线观看| 中文字幕精品影院| 欧美刺激性大交免费视频| 精品欧美国产一区二区三区| 精品久久久久久中文字幕大豆网| 欧美成人精品在线观看| 狠狠干狠狠久久| 国产精品久久久久久亚洲影视| 日韩在线观看免费全| 日韩经典一区二区三区| 最近2019年中文视频免费在线观看| 日韩国产精品亚洲а∨天堂免| 国产精品爽爽ⅴa在线观看| 精品自在线视频| 久久久国产一区二区| 日韩av在线免播放器| 91在线精品视频| 亚洲电影免费观看| 中日韩午夜理伦电影免费| …久久精品99久久香蕉国产| 亚洲 日韩 国产第一| 欧美成人在线网站| 中文字幕精品www乱入免费视频| 亚洲三级黄色在线观看| 2019国产精品自在线拍国产不卡| 97视频在线观看亚洲| 奇门遁甲1982国语版免费观看高清| 亚洲综合在线中文字幕| 国产精品久久久久久久久久小说| 精品国产依人香蕉在线精品| 国产精品美女网站| 亚洲天天在线日亚洲洲精| 欧美俄罗斯性视频| 日韩精品亚洲精品| 91av网站在线播放| 久久夜色撩人精品| 亚洲色图五月天| 欧美激情一区二区三区在线视频观看| 91av在线看| 欧美精品www在线观看| 成人a在线观看| 亚洲精品资源在线| 国产精品久久一区主播| 亚洲剧情一区二区| 日韩高清中文字幕| 国产乱人伦真实精品视频| 欧美视频二区36p| 国模精品视频一区二区| 欧美高清第一页| 韩日欧美一区二区| 日本高清不卡在线| 中文字幕久久亚洲| 亚洲国产精品大全| 91在线直播亚洲| 日韩中文字幕久久| 日本精品视频网站| 在线观看日韩www视频免费| 亚洲香蕉av在线一区二区三区| 亚洲精品狠狠操| 97精品久久久| 黑人与娇小精品av专区| 国产精品久久久久久久久免费看| 国产精品国产自产拍高清av水多| 久久视频在线免费观看| 国产精品网站入口| 欧美日韩国产成人高清视频| 日韩av影视在线| 久久久极品av| 97免费视频在线播放| …久久精品99久久香蕉国产| 国产区精品视频| 青草青草久热精品视频在线网站| 日韩欧美成人区| 午夜精品一区二区三区在线| 亚洲人成电影网站| 欧美一区二区三区免费观看| 久久久91精品国产一区不卡| 亚洲精品国产综合区久久久久久久| 久久天天躁狠狠躁夜夜av| 狠狠躁夜夜躁人人爽天天天天97| 亚洲3p在线观看| 欧美又大又硬又粗bbbbb| 久久久久国色av免费观看性色| 国产精品直播网红| 91精品久久久久久久久青青| 久久好看免费视频| 亚洲影院污污.| 国产精品一区二区三区久久| 国产日韩欧美视频在线|