WebService 的簡單部署

WebService的簡單部署

Webservice概念

Web Services是由企業發佈的完成其特定商務需求的在線應用服務,其他公司或應用軟件能夠通過Internet來訪問並使用這項在線服務。

它是一種構建應用程序的普遍模型,可以在任何支持網絡通信的操作系統中實施運行;它是一種新的web應用程序分支,是自包含、自描述、模塊化的應用,可以發佈、定位、通過web調用。Web Service是一個應用組件,它邏輯性的爲其他應用程序提供數據與服務.各應用程序通過網絡協議和規定的一些標準數據格式(HttpXMLSoap)來訪問Web Service,通過Web Service內部執行得到所需結果.Web Service可以執行從簡單的請求到複雜商務處理的任何功能。一旦部署以後,其他Web Service應用程序可以發現並調用它部署的服務。

關鍵的技術和規則

  在構建和使用Web Service,主要用到以下幾個關鍵的技術和規則:

  1.XML:描述數據的標準方法.

  2.SOAP:表示信息交換的協議.

  3.WSDL:Web服務描述語言.

  4.UDDI(Universal Description, Discovery and Integration):通用描述、發現與集成,它是一種獨立於平臺的,基於XML語言的用於在互聯網上描述商務的協議。

1.創建WebService

新建一個ASP.NET Web 服務

添加一些代碼,這裏寫了一個查詢了數據庫的方法,返回了XmlDataDocument

public XmlDataDocument GetPeopleList(string name)

    {

        string str = "select * from T_Teacher where teachername='" + name + "'";

        DataSet ds = SqlHelper.QuerySql(str);

        XmlDataDocument xd = new XmlDataDocument();

        if (ds.Tables[0].Rows.Count == 0)//沒有查詢到任何記錄

        {

            string xml = "<NewDataSet>無數據</NewDataSet>";

            xd.LoadXml(xml);

        }

        else

        {

            xd = new XmlDataDocument(ds);

        }

        return xd;

    }

2.部署WebService

生成項目,再發布這個網站到IIS

 

得到服務頁面的地址 http://localhost:8901/ServiceA.asmx

3.調用WebService

新建另一個網站,

添加Web引用

URL爲上一步驟得到的服務頁面的地址 http://localhost:8901/ServiceA.asmx

 

點擊添加引用

項目中會多出這些

再看代碼調用

protected void btn_ws_Click(object sender, EventArgs e)

        {

            //服務在這裏作爲一個類來使用

            WebServiceA.ServiceA sa = new WebServiceA.ServiceA();

            XmlNode xn = sa.GetPeopleList(TextBox2.Text);

            DataSet ds = new DataSet();

            XmlDataDocument xd = new XmlDataDocument();

            StringBuilder xmlString1 = new StringBuilder(xn.OuterXml);

            xd.LoadXml(xmlString1.ToString());             

            //這裏用到了XmlDataDocumentDataSet轉換

            //在創建WebService裏用到的是將DataSetXmlDataDocument轉換

            //可以記住這個轉換方法,很有用

            ds.ReadXml(new XmlNodeReader(xd));

            //將數據綁定到控件

            GridView1.DataSource = ds.Tables[0].DefaultView;

            GridView1.DataBind();

        }

 

下面是調用結果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章