熱點推薦:
您现在的位置: 電腦知識網 >> 操作系統 >> Windows系統管理 >> 正文

在IE浏覽器中使用Windows窗體控件(二)

2022-06-13   來源: Windows系統管理 

  通過windows窗體控件訪問Web Service
  窗體控件一個重要優點就是你可以通過它在客戶端實現豐富的用戶信息比如說你可以通過窗體控件對Web服務的訪問從而在IE中顯示而不需要重新刷新該頁面為了演示這點我們先來創建一個Web服務接著再來演示怎樣通過窗體控件調用Web服務
  
  創建Web service
  我們創建一個 Visual C# web service 新項目名字取為AuthorsWebService
  
  建立以後我們修改服務類名稱為AuthorsService同時在類裡面增加一個GetAuthors方法到裡面該方法的代碼如下
  
  [WebMethod]
  
  public DataSet GetAuthors()
  
  {
  
   string connString = SystemConfigurationConfigurationSettingsAppSettings[connectionString];
  
   SqlConnection sqlConn = new SqlConnection(connString);
  
   DataSet dstAuthors = new DataSet(Authors);      
  
   SqlDataAdapter adapter = new SqlDataAdapter(Select * from AuthorssqlConn);   
  
   adapterFill(dstAuthorsAuthor);    
  
   sqlConnClose();
  
   sqlConnDispose();
  
   return dstAuthors;   
  
  }
  
  上面方法的代碼比較簡單我們把數據庫連接字符串儲存到了nfig文件的appSettings節點上如下
  
  
  
    
  
  
  
  上面代碼中
  我們創建了一個SqlConnnection實例同時把上面的連接字符串作為參數傳入接著創建一個SqlDataAdapter對象傳入兩個參數――查詢字符串和SqlConnnection實例調用SqlDataAdapter實例的Fill方法來執行數據庫查詢並把結果填充到DataSet現在我們完成了Web服務的創建接下去來建立一個他的一個客戶端調用
  
  創建windows窗體控件作為Web服務客戶端
  
  在這裡我們是想用一個窗體控件來調用Web Service因此新建一個Visual C#窗體控件項目取名AuthorsWebServiceClientControl:
  
  完成後修改默認用戶控件名稱為AuthorsControl我們在上面添加了一個DataGrid控件取名GridAuthors 同時添加一個按鈕取名BtnClick注冊按鈕的點擊事件在事件處理函數中將會調用WebService在這之前我們需要添加項目的Web引用輸入剛才創建的Web服務地址編輯器會生成該服務的代理添加Web服務引用如下圖
  
 

  服務代理創建以後我們在按鈕事件中添加代碼
  
  private void BtnClick_Click(object sender SystemEventArgs e)
  
  {
  
   thisCursor = CursorsWaitCursor;
  
   AuthorsWebServiceProxyAuthorsService authorsSvc = new
  
     AuthorsWebServiceProxyAuthorsService();
  
   thisGridAuthorsDataSource = authorsSvcGetAuthors();
  
   thisCursor = CursorsDefault;
  
  }
  在上面代碼中我們創建了web服務代理的一個實例並調用GetAuthors方法把返回的數據集賦值給GridAuthors的DataSource屬性接著編譯這個窗體控件然後配置虛擬目錄
  
  創建Html頁面和建立虛擬路徑
  
  在這一步中我們通過創建一個Html頁面來使用上面創建的那個AuthorsWebServiceClientControl下面是他的代碼
  
  
  
  Authors Display Control


  
  


  
  
  
  現在我們需要創建一個虛擬目錄使該控件能正常工作並把和AuthorsWebServiceClientControldll放在一起打開該浏覽器輸入地址你就會看到一個按鈕和一個空的DataGrid如果你點擊該命令按鈕控件就會調用Web服務同時把結果寫到了DataGrid中頁面結果如下所示
  

From:http://tw.wingwit.com/Article/os/xtgl/201311/9584.html
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.