公告版位
哈囉,丫德我會常常更新一些工作上的心情記事及資訊科技新知與大家分享...

在上一篇文章上,我建立了一個最簡單的wcf services

那麼這次我就來練習看看用silverligt呼叫這個已經建立好的wcf

下面的範例,其實我是參考這個網站來當作練習的

http://www.dotblogs.com.tw/lolota/archive/2008/12/10/6329.aspx

不過該網站中所提到的部份因是用vs2008+silverlight3的方式做的,跟我用vs2010應該是不太一樣,因為就我自己實作的結果,並不需要那麼複雜,可能是vs2010簡化了吧…

OK!我還是使用上一篇所建立的方案繼續加一個silverlight3的專案

按下ok後,會出現如下視窗,這邊我選<new web project>,因為我沒有已經建立好的web應用程式,所以我選擇自動產生一個,當然如果有的話,就直接選擇你自己的web站台專案即可,而因為vs2010rc版沒有支援silverlight4,所以沒有得選啦!正式版出來時,應該就會支援了吧!?

建立後,我的方案中有3個專案

 

 

接下來在mainpage.xaml中的畫布中,拉一個button及二個textbox

接下來我們把之前建立的wcf服務,加入到這個silverlight當作參考

將上一個範例在iis中的網址copy上來,或者你自己已經有做好的wcf服務也可以直接拿來用囉!

接下來在button的click事件中寫一些東西!

 

 

程式碼如下

private void button1_Click(object sender, RoutedEventArgs e)
       {

             //將service建立起來
           WcfTest.ExamClient wt = new WcfTest.ExamClient();

           //建立eventhandler
           wt.HelloCompleted += new EventHandler<WcfTest.HelloCompletedEventArgs>(wt_HelloCompleted);

          //將參數傳入wcf中建立的方法
           wt.HelloAsync(this.textBox1.Text);
       }

void wt_HelloCompleted(object sender, WcfTest.HelloCompletedEventArgs e)
       {
          
this.textBox2.Text = e.Result;
       }

告訴你一小方法,如果是高手的話,就可以略過不用看了啦!哈

就是在上述的程式碼中,紅色的部份,一開始打的時候,只要打到+=即可,之後按鍵盤上的tab鍵,就會幫你把

new EventHandler<WcfTest.HelloCompletedEventArgs>(wt_HelloCompleted);

這行寫完囉!,並產生藍色區的程式碼,黑色字體的部份都是要自己打的!這樣應該是還蠻簡單的了吧!

來執行看看吧!

成功囉!我的第一支使用silverlight呼叫wcf程式!

下一次來使用wcf回傳資料集的結果到silverlight上的datagrid看看!

丫德 發表在 痞客邦 PIXNET 留言(1) 人氣()


留言列表 (1)

發表留言
  • Beauty Kingdom
  • 欣賞是一種美德~回應是最大的支持^^