C# vs2010 調用webservice

如何調用已經發布的webservice,主要分爲2個步驟(vs2010環境 C#)java

  1. 發佈webservice,使其處於服務狀態。web

  2. 建立一個asp.net程序(java等也能夠),對webservice的方法進行調用。c#


  1. 發佈webservice,能夠參見asp.net

    http://mingsuper.blog.51cto.com/8269088/1439419ide

  2. 建立asp.net測試

    1)建立空的asp.net程序.net

    wKioL1PHgbrSmIo7AAYOD8NqKHM453.jpg2)創建測試用的頁面,這裏不過多敘述3d

    wKiom1PHgOXQFdJ_AAHhrrYw3dM623.jpg3)增長對webservice的web 引用,在工程上點擊右鍵。blog

    wKiom1PHgYThuWtoAAdlpIH2KJk414.jpg4)在彈出的對話框中輸入webservice的發佈路徑,點擊go按鈕。找到後,在下面的對話框中爲這個引用起命名空間名。(這個名字在後續的操做中會被用到)ci

    wKiom1PHgf-yq1PoAAH-X5DvUXI858.jpg

    5)引入後是這樣的

    wKiom1PHgoixzDDDAAEPU1R_Wtw902.jpg

    6)LoginService.wsdl是發佈的webservice的描述文件

    wKiom1PHhCqyEaUyAAIyDKh1Vx0115.jpg7)在asp.net進行調用過程當中,直接經過命名空間名找到對應的webservice類,這裏是

    LoginServiceSoapClient(我發佈的類名是LoginService 其本身加上了soapclient)。其中LoginServiceRef.UserInfo這個變量頗有意思,它自己在asp.net工程中並無被定義過,是在webservice的工程中被定義的,但在asp工程裏也能夠使用,並且屬性方法都是存在的。

protected void LoginBtn_Click(object sender, EventArgs e)
    {
        string loginResult;
        LoginServiceRef.LoginServiceSoapClient service = new LoginServiceRef.LoginServiceSoapClient();
        LoginServiceRef.UserInfo userinfo = new LoginServiceRef.UserInfo();
        //UserInfo userInfo = new UserInfo();
        userinfo.UserName = UserName.Text;
        userinfo.Password = Password.Text;
        loginResult = service.CheckLoginUserInfo(userinfo);
        LoginResult.Text = loginResult;
    }


調用結果

wKiom1PHhhqDdKfqAAC7Ho2oQG0861.jpg

wKioL1PHhzOBePxyAAC8hJmMXCw873.jpg

wKiom1PHhhqwMUS4AAC773CCrso463.jpg

相關文章
相關標籤/搜索