Tutorial WCF Service Bagian #2

Posted by Kamarudin • 2 minute read • Comments

Melanjutkan pembahasan postingan sebelumnya yaitu tentang pembuatan web service menggunakan teknologi WCF.

Kita sudah menyelesaikan project pertama yaitu pembuatan project CalculatorLib dan kita lanjutkan dengan pembuatan project CalculatorServer.

Sebagai review CalculatorServer adalah project yang akan mengimplementasikan semua method abstract yang ada pada interface ICalculator (project CalculatorLib selain itu project CalculatorServer juga akan kita hostkan sehingga bisa menjadi web service. Apa yang dimaksud dengan host disini, silahkan baca postingan Tutorial WCF Service Bagian #1.

Aktifkan kembali solution Calculator yang di dalamnya sudah ada project CalculatorLib.

Kita akan menambahkan project CalculatorServer masih di solution yang sama

Menambahkan Project CalculatorServer

  1. Klik kanan Solution Calculator -> Add -> New Project

  2. Pada dialog Add New Project aktifkan pilihan Visual C# kemudian pilih Templates Class Library

    Pada isian Name isikan CalculatorServer untuk isian Location dibiarkan saja setelah itu klik Ok. Jika langkah sebelumnya berhasil maka pada solution Calculator akan ketambahan 1 project baru yaitu CalculatorServer.

    Kemudian hapus class Class1

Menambahkan Class Calculator

Class Calculator adalah class yang akan mengimplementasikan semua method abstract dari interface ICalculator yang sudah kita buat pada project sebelumnya (CalculatorLib).

  1. Klik kanan project CalculatorServer -> Add -> Class…

    Pada isian Name diisi Calculator

    Setelah itu akan tampil editor code class Calculator

    Jangan lupa untuk menambahkan access modifier public.

    Sebelum kita melengkapi kode class Calculator di atas, terlebih dulu kita harus menambahkan referensi CalculatorLib yang sudah kita buat pada project sebelumnya, tujuannya adalah agar class Calculator bisa mengakses interface ICalculator dan mengimplementasikan semua method abstractnya.

  2. Klik kanan node References -> Add Reference…

  3. Aktifkan panel Solution kemudian pilih project CalculatorLib

    Jika langkah sebelumnya berhasil akan ketambahan 1 buah node dengan nama CalculatorLib pada node References

    Selanjutnya kita lengkapi kode class Calculator di atas, seperti di bawah ini.

    Sampai disini kita sudah bisa mencoba untuk meng-compile project CalculatorServer dengan cara klik kanan project CalculatorServer -> Build

    Apa yang terjadi ??? Masih error bukan ?

    Error ini terjadi karena class Calculator mengimplementasikan interface ICalculator sedangkan method-method abstractnya (Penambahan, Pengurangan, Perkalian dan Pembagian) belum kita definisikan ulang / override di class Calculator.

Mengimplementasikan Method Abastract Interface ICalculator secara Otomatis

Untuk mengatasi error pada langkah sebelumnya kita tinggal klik kanan pada tulisan interface ICalculator ->Implement Interface -> Implement Interface

Kemudian secara otomatis semua implementasi method abstract dari interface ICalculator akan ditambahkan.

Setelah itu kita tinggal melengkapi kode untuk masing-masing method diatas.

Sekarang kita coba lagi untuk meng-compile ulang project CalculatorServer dengan cara klik kanan project CalculatorServer -> Build

WCF Service Behavior

WCF service behavior digunakan untuk mengatur behavior atau prilaku WCF service ketika menangani request atau permintaan dari klien.

Jika kita mempunyai behavior atau tingkah laku yang baik, otomatis kita juga bisa menjadi orang yang lebih baik, benar atau tidak ? :grin:

Begitu juga dengan WCF Service Behavior, dengan attribut ini kita bisa mengatur hal-hal yang berhubungan dengan :

  • Concurrency
  • Throttling
  • Transaction
  • Instance Context/Session Management
  • Thread Behavior

Untuk informasi yang lebih lengkap tentang WCF Service Behavior, silahkan baca artikel Implementing WCF Service Behaviors dan WCF Concurrency (Single, Multiple, and Reentrant) and Throttling.

Sebagi contoh kita akan mengeset behavior untuk Concurrency dan Instance Context dengan model Concurrency = Single dan Instance Context = Per Call via attribute WCF service behavior.

Untuk menggunakan attribute WCF service behavior, tambahkan terlebih dulu referensi System.ServiceModel

Kemudian tambahkan juga di bagian using

Setelah itu revisi class Calculator menjadi seperti berikut :

Yuph sampai disini saja untuk postingan kali ini, insyaAlloh akan kita lanjutkan pada kesempatan berikutnya.

Selamat MENCOBA :blush:

Comments