Bagikan melalui


Menerapkan Kontrak Layanan

Layanan adalah kelas yang mengekspos fungsionalitas yang tersedia untuk klien di satu atau beberapa titik akhir. Untuk membuat layanan, tulis kelas yang mengimplementasikan kontrak Windows Communication Foundation (WCF). Anda dapat melakukan ini dengan salah satu dari dua cara. Anda dapat menentukan kontrak secara terpisah sebagai antarmuka lalu membuat kelas yang mengimplementasikan antarmuka tersebut. Atau, Anda dapat membuat kelas dan kontrak secara langsung dengan menempatkan ServiceContractAttribute atribut pada kelas itu sendiri dan OperationContractAttribute atribut pada metode yang tersedia untuk klien layanan.

Membuat kelas layanan

Berikut ini adalah contoh layanan yang mengimplementasikan IMath kontrak yang telah ditentukan secara terpisah.

// Define the IMath contract.  
[ServiceContract]  
public interface IMath  
{  
    [OperationContract]
    double Add(double A, double B);  
  
    [OperationContract]  
    double Multiply (double A, double B);  
}  
  
// Implement the IMath contract in the MathService class.  
public class MathService : IMath  
{  
    public double Add (double A, double B) { return A + B; }  
    public double Multiply (double A, double B) { return A * B; }  
}  

Atau, layanan dapat mengekspos kontrak secara langsung. Berikut ini adalah contoh kelas layanan yang menentukan dan mengimplementasikan MathService kontrak.

// Define the MathService contract directly on the service class.  
[ServiceContract]  
class MathService  
{  
    [OperationContract]  
    public double Add(double A, double B) { return A + B; }  
    [OperationContract]  
    private double Multiply (double A, double B) { return A * B; }  
}  

Perhatikan bahwa layanan sebelumnya mengekspos kontrak yang berbeda karena nama kontraknya berbeda. Dalam kasus pertama, kontrak yang diekspos diberi nama "IMath" sementara dalam kasus kedua kontrak diberi nama "MathService".

Anda dapat mengatur beberapa hal di tingkat implementasi layanan dan operasi, seperti konkurensi dan instancing. Untuk informasi selengkapnya, lihat Merancang dan Menerapkan Layanan.

Setelah menerapkan kontrak layanan, Anda harus membuat satu atau beberapa titik akhir untuk layanan. Untuk informasi selengkapnya, lihat Gambaran Umum Pembuatan Titik Akhir. Untuk informasi selengkapnya tentang cara menjalankan layanan, lihat Layanan Hosting.

Lihat juga