none
MS Knowledge Base: Bagaimana menjalankan WCF Service melalui TCP transport pada Microsoft Silverlight 4? (Part 2) RRS feed

  • Diskusi Umum

  • 5. Untuk menambahkan netTcpbinding endpoint ke layanan WCF, jalankan kode berikut untuk mengkonfigurasi app.config: 

     

    <system.serviceModel>
            <behaviors>
                <serviceBehaviors>
                    <behavior name="NetTcpWCFService.WeatherServiceBehavior">
                        <serviceMetadata />
                        <serviceDebug includeExceptionDetailInFaults="false" />
                    </behavior>
                </serviceBehaviors>
            </behaviors>
          <services>
            <service behaviorConfiguration="NetTcpWCFService.WeatherServiceBehavior"
                name="NetTcpWCFService.WeatherService">
              <endpoint address="" binding="netTcpBinding" bindingConfiguration="b1"
                 contract="NetTcpWCFService.IWeatherService" />
             <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange" />
              <host>
                <baseAddresses>
                  <add baseAddress="net.tcp://localhost:4504/WeatherService" />
                </baseAddresses>
              </host>
            </service>
          </services>
          <bindings>
            <netTcpBinding>
              <binding name="b1">
                <security mode="None"/>
              </binding>
            </netTcpBinding>
          </bindings>
        </system.serviceModel>

     

    Catatan Hanya ada beberapa port dari 4502 - 4534 yang diperbolehkan untuk diakses oleh Silverlight, dan anda memerlukan file client access policy untuk memungkinkan akses Silverlight tersebut. Untuk informasi lebih lanjut tentang cara untuk mengakses Silverlight, silakan lihat Langkah 3.

     

    6.     Buka file Program.cs, tambahkan namespace System.ServiceModel. Jalankan kode berikut ini untuk memulai ServiceHost service dalam Main method: 

     

        static void Main(string[] args)
            {
                using (var host = new ServiceHost(typeof(WeatherService)))
                {
                    host.Open();
                    Console.WriteLine("Service is running...");
                    Console.WriteLine("Service address: "+host.BaseAddresses[0]);
                    Console.Read();
                }
            }

     

     

     

    Langkah 2

     

    Buat klien Silverlight WCF dan aplikasi Silverlight untuk mengkonsumsi WCF. Anda perlu sebuah tombol untuk layanan subscribe atau unsubscribe, dan listbox untuk menampilkan laporan cuaca dari layanan.

     

    1.     Buat sebuah proyek baru pada Silverlight CSSL4WCFNetTcp. Pada kotak dialog " New Silverlight Application", anda perlu memeriksa "Host the Silverlight application in a new Web site" dalam checkbox, dan kemudian mengatur "Silverlight Version" menjadi Silverlight 4.

     

    2.     Jalankan kode berikut untuk membuka file MainPage.xaml dan mengedit elemen default Grid:

     

        <Grid x:Name="LayoutRoot" Background="White">
    
    
                   <Grid.RowDefinitions>
    
    
                   <RowDefinition Height="46*" />
    
    
                   <RowDefinition Height="26*" />
    
    
                   <RowDefinition Height="228*" />
    
    
                   </Grid.RowDefinitions>
    
    
              <TextBlock Text="Silverlight NetTcp Sample" Grid.Row="0" Margin="0,0,0,10" FontSize="24"/>
    
    
              <StackPanel Orientation="Horizontal" Grid.Row="1">
    
    
                   <Button Content="Subscribe weather report" Name="btnSubscribe" Click="Button_Click"/>
    
    
                <TextBlock VerticalAlignment="Center" FontStyle="Italic" Foreground="Red"  
                Margin="5,0,0,0" Name="tbInfo"/>
    
    
              </StackPanel>
    
    
                    <ListBox Name="lbWeather" Grid.Row="2" Margin="0,5,0,0"/>
    
    
         </Grid>

     

     

    3.     Tambahkan Service Reference pada weatherService class dalam WCF service. Untuk melakukannya, set proyek NetTcpWCFService sebagai proyek startup, tekan Ctrl + F5 untuk memulai layanan. Kemudian, klik kanan proyek Silverlight, pilih "Add Service Reference", dalam kotak dialog "Add Service Reference", masukan alamat weatherservice, dan tekan OK. Setelah itu, Microsoft Visual studio 2010 akan menghasilkan kode WCF proxy dalam proyek Silverlight.

     

    Berlanjut ke MS Knowledge Base: Bagaimana menjalankan WCF Service melalui TCP transport pada Microsoft Silverlight 4? (Part 3) 


    Agnes Sannie [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Selasa, 12 April 2011 03.05
    Moderator