<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      一步一步學Silverlight 2系列(15):數據與通信之ASMX

      概述

      Silverlight 2 Beta 1版本發布了,無論從Runtime還是Tools都給我們帶來了很多的驚喜,如支持框架語言Visual Basic, Visual C#, IronRuby, Ironpython,對JSON、Web Service、WCF以及Sockets的支持等一系列新的特性。《一步一步學Silverlight 2系列》文章將從Silverlight 2基礎知識、數據與通信、自定義控件、動畫、圖形圖像等幾個方面帶您快速進入Silverlight 2開發。

      本文將簡單介紹在Silverlight 2中如何與ASMX進行通信。

      簡單示例

      本文的示例非常簡單,其過程也跟我們在一步一步學Silverlight 2系列(14):數據與通信之WCF中差不多,我們仍然顯示一個最新隨筆的列表,最終完成后效果如下所示:

      TerryLee_Silverlight2_0065

      定義一個業務實體Post。

      public class Post
      {
          public int Id { get; set; }
      
          public string Title { get; set; }
      
          public string Author { get; set; }
      }

      在Web項目中添加一個Web Service文件,命名為BlogService.asmx

      TerryLee_Silverlight2_0068

      實現該服務,定義一個GetPosts方法:

      public class BlogService : WebService
      {
          [WebMethod]
          public Post[] GetPosts()
          {
              List<Post> posts = new List<Post>()
              {
                  new Post{ Id=1, Title="一步一步學Silverlight 2系列(13):數據與通信之WebRequest", Author="TerryLee" },
                  new Post{ Id=2, Title="一步一步學Silverlight 2系列(12):數據與通信之WebClient", Author="TerryLee" },
                  new Post{ Id=3, Title="一步一步學Silverlight 2系列(11):數據綁定", Author="TerryLee" },
                  new Post{ Id=4, Title="一步一步學Silverlight 2系列(10):使用用戶控件", Author="TerryLee" },
                  new Post{ Id=5, Title="一步一步學Silverlight 2系列(9):使用控件模板", Author="TerryLee" },
                  new Post{ Id=6, Title="一步一步學Silverlight 2系列(8):使用樣式封裝控件觀感", Author="TerryLee" }
              };
      
              return posts.ToArray();
          }
      }

      同樣設置Web Development Server的端口號為一個固定值,這里設為8081,然后在瀏覽器中測試服務是否正確:

      TerryLee_Silverlight2_0069

      點擊調用后測試服務正確

      TerryLee_Silverlight2_0070

      在Silverlight項目中,添加對服務引用,

      TerryLee_Silverlight2_0071

      使用對象瀏覽器查看一下生成客戶端代理類中的對象:

      TerryLee_Silverlight2_0072

      編寫展示界面,XAML如下,與上一篇中的示例一樣:

      <Grid Background="#46461F">
          <Grid.RowDefinitions>
              <RowDefinition Height="40"></RowDefinition>
              <RowDefinition Height="*"></RowDefinition>
          </Grid.RowDefinitions>
          <Grid.ColumnDefinitions>
              <ColumnDefinition></ColumnDefinition>
          </Grid.ColumnDefinitions>
          <Border Grid.Row="0" Grid.Column="0" CornerRadius="15"
              Width="240" Height="36" Background="Orange"
              Margin="20 0 0 0" HorizontalAlignment="Left">
              <TextBlock Text="最新隨筆" Foreground="White"
                     HorizontalAlignment="Left" VerticalAlignment="Center"
                     Margin="20 0 0 0"></TextBlock>
          </Border>
          <ListBox x:Name="Posts" Grid.Row="1" Margin="40 10 10 10">
              <ListBox.ItemTemplate>
                  <DataTemplate>
                      <StackPanel Orientation="Horizontal">
                          <TextBlock Text="{Binding Id}" Height="40" Foreground="Red"></TextBlock>
                          <TextBlock Text="{Binding Title}" Height="40"></TextBlock>
                          <TextBlock Text="{Binding Author}" Height="40" Foreground="Orange"></TextBlock>
                      </StackPanel>
                  </DataTemplate>
              </ListBox.ItemTemplate>
          </ListBox>
      </Grid>

      實現調用ASMX,并進行數據的綁定。仍然采用異步模式,所使用的方法如上圖中紅色框中的部分。過程與WCF通信差不多,只不過不再需要指定Bingding等信息:

      public partial class Page : UserControl
      {
          public Page()
          {
              InitializeComponent();
          }
      
          private void UserControl_Loaded(object sender, RoutedEventArgs e)
          {
              BlogServiceSoapClient client = new BlogServiceSoapClient();
              client.GetPostsCompleted += new EventHandler<GetPostsCompletedEventArgs>(client_GetPostsCompleted);
              client.GetPostsAsync();
          }
      
          void client_GetPostsCompleted(object sender, GetPostsCompletedEventArgs e)
          {
              if (e.Error == null)
              {
                  Posts.ItemsSource = e.Result;
              }
          }
      }

      一個完整的Silverlight 2中調用ASMX的示例就完成了,運行后效果如下:

      TerryLee_Silverlight2_0065

      結束語

      本文簡單介紹了在Silverlight 2中如何調用ASMX,你可以從這里下載示例代碼。

      下一篇:一步一步學Silverlight 2系列(16):數據與通信之JSON

      posted @ 2008-03-10 18:24  TerryLee  閱讀(20161)  評論(35)    收藏  舉報
      主站蜘蛛池模板: 国产95在线 | 欧美| 欧美白妞大战非洲大炮| 十八岁污网站在线观看| 亚洲国产激情一区二区三区| caoporn成人免费公开| 国产成人无码专区| 国产成人啪精品午夜网站| 中美日韩在线一区黄色大片| 亚洲熟妇在线视频观看| 国产综合久久久久久鬼色| 97一期涩涩97片久久久久久久| 丰满人妻一区二区三区高清精品| 沾益县| 国产在线一区二区不卡| 午夜福利片一区二区三区| 99国产精品欧美一区二区三区| 国产网友愉拍精品视频手机 | 综合久久国产九一剧情麻豆| 国产电影无码午夜在线播放| 久久免费偷拍视频有没有| 欧美一区二区三区欧美日韩亚洲 | 久久精品丝袜高跟鞋| 国产精品亚洲А∨天堂免| 鄂州市| 少妇激情一区二区三区视频| 美女爽到高潮嗷嗷嗷叫免费网站| 国产69精品久久久久人妻刘玥| 男女啪啪免费观看网站| 亚洲中文字幕在线二页| 无码国产精品一区二区免费虚拟vr | 亚洲一二三四区中文字幕| 69天堂人成无码免费视频| 天天做天天爱夜夜爽| 国产九九视频一区二区三区| 亚洲中文字幕日韩精品| 欧洲美熟女乱又伦免费视频| 日本边添边摸边做边爱喷水| 69天堂人成无码免费视频| 色综合久久一区二区三区| 日韩精品一区二区三区不卡| 国产免费性感美女被插视频 |