<comContract>

Menentukan kontrak layanan integrasi COM+.

<konfigurasi>
  <system.serviceModel>
    <comContracts>
      <comContract>

Sintaks

<comContracts>
  <comContract contract="String"
               namespace="String"
               name="String"
               requireSession="Boolean">
    <exposedMethods>
      <exposedMethod name="String" />
    </exposedMethods>
    <userDefinedTypes>
      <userDefinedType name="String"
                       typeLibID="String"
                       typeLibVersion="String"
                       typeDefID="String">
      </userDefinedType>
    </userDefinedTypes>
    <persistableTypes>
      <persistableType id="String"
                       name="String">
      </persistableType>
    </persistableTypes>
  </comContract>
</comContracts>

Atribut dan Elemen

Bagian berikut menjelaskan atribut, elemen turunan, dan elemen induk.

Atribut

Atribut Deskripsi
contract String yang berisi jenis kontrak.
nama String yang berisi nama kontrak.
namespace layanan String yang berisi namespace layanan kontrak.
requiresSession Nilai Boolean yang menentukan apakah kontrak hanya dapat digunakan pada pengikatan sesi. Saat layanan diinisialisasi, waktu proses integrasi memastikan bahwa pengaturan ini konsisten dengan jenis pengikatan yang akan digunakan. Pengecualian dibuat jika satu atau lebih pengikatan untuk kontrak bertentangan. Jika properti ini adalah false, dan saluran satu arah sedang digunakan dan ada parameter [out], pengecualian juga dibuat.

Elemen Anak

Elemen Deskripsi
persistableTypes Semua jenis yang dapat dipertahankan.
userDefinedTypes Kumpulan Jenis Buatan Pengguna (UDT) yang akan disertakan dalam kontrak layanan.
exposedMethods Kumpulan metode COM+ yang diekspos saat antarmuka pada komponen COM+ diekspos sebagai Layanan web.

Elemen Induk

Elemen Deskripsi
comContracts Berisi kumpulan elemen comContract.

Keterangan

Kontrak layanan integrasi COM+ saat ini dibatasi untuk namespace layanan http://tempuri.org, dan nama kontrak berasal dari antarmuka COM yang mendukung. Namun, Anda dapat menentukan alternatif dengan menggunakan bagian comContracts, serta elemen comContract dalam file konfigurasi. Misalnya, Anda dapat menggunakan konfigurasi berikut untuk menentukan namespace layanan, nama kontrak, dan jenis yang ditentukan pengguna untuk disertakan, serta pengaturan lain untuk kontrak layanan.

<comContracts>
  <comContract contract="{5163B1E7-F0CF-4B6A-9A02-4AB654F34284}"
               namespace="http://tempuri.org/5163B1E7-F0CF-4B6A-9A02-4AB654F34284"
               name="_Broker"
               requireSession="true">
    <exposedMethods>
      <exposedMethod name="BuyStock" />
      <exposedMethod name="SellStock" />
      <exposedMethod name="ExecuteTransaction" />
    </exposedMethods>
  </comContract>
</comContracts>

Saat layanan diinisialisasi, ruang nama dan nama kontrak yang ditentukan diterapkan ke deskripsi layanan yang dihasilkan.

Lihat juga