Mempromosikan Properti
Promosi properti melibatkan mempromosikan simpul Elemen Bidang atau Atribut Bidang dalam skema menjadi Bidang Dibedakan atau Bidang Properti. Anda juga dapat mempromosikan simpul Rekaman sebagai Bidang Properti jika memiliki konten sederhana (properti Tipe Konten dari simpul Rekaman diatur ke SimpleContent). Bagian ini menyediakan instruksi langkah demi langkah untuk mempromosikan simpul sebagai Bidang Khusus atau sebagai Bidang Properti.
Untuk mempromosikan node Rekaman (dengan konten sederhana), Elemen Bidang, atau Atribut Bidang sebagai Bidang Properti, Anda dapat terlebih dahulu menentukan jenis skema khusus yang disebut skema properti. Skema properti menentukan sekumpulan simpul Elemen Bidang yang tidak terstruktur di mana Anda mempromosikan Simpul Rekaman (dengan konten sederhana), Elemen Bidang, atau Atribut Bidang . Untuk instruksi langkah demi langkah untuk membuat skema properti, lihat Cara Membuat Skema Properti.
Atau, Anda dapat menggunakan fitur Promosi Cepat , yang akan secara otomatis membuat dan memperbarui skema properti tunggal setiap kali Anda mempromosikan simpul Elemen Bidang, Atribut Bidang, atau Rekaman baru (dengan konten sederhana).
Catatan
Anda dapat mempromosikan bidang sebagai Bidang Khusus dan Bidang Properti.
Catatan
Fitur Promosi Cepat memodifikasi skema properti dengan menyisipkan properti baru dengan nama simpul yang dipromosikan.
Penting
Jangan memindahkan atau mengganti nama bidang dalam skema setelah Anda mempromosikannya. Saat Anda memindahkan atau mengganti nama bidang skema, BizTalk Editor tidak memperbarui JalurX yang menentukan lokasi bidang yang dipromosikan.
Jenis Data XSD dan CLR
Di beberapa tempat, seperti dalam promosi properti, jenis data XSD dipromosikan ke jenis data Common Language Runtime (CLR). Tabel berikut ini memperlihatkan jenis data XSD yang bisa dipromosikan dan jenis data CLR terkait.
Tipe Data XSD | Tipe Data CLR |
---|---|
anyURI | String |
Boolean | Boolean |
Byte | sbyte |
Tanggal | DateTime |
dateTime | DateTime |
Decimal | Desimal |
Ganda | Ganda |
ENTITAS | String |
Mengambang | Tunggal |
gDay | DateTime |
gMonth | DateTime |
gMonthDay | DateTime |
gYear | DateTime |
gYearMonth | DateTime |
ID | String |
IDREF | String |
Int | Int32 |
Bilangan bulat | Desimal |
Bahasa | String |
Nama | String |
NCName | String |
bilangan bulat negatif | Desimal |
NMTOKEN | String |
nonNegativeInteger | Desimal |
nonPositiveInteger | Desimal |
normalizedString | String |
NOTASI | String |
positiveInteger | Desimal |
QName | String |
Short | Int16 |
String | String |
Waktu | DateTime |
Token | String |
unsignedByte | Byte |
unsignedInt | UInt32 |
unsignedShort | UInt16 |
Catatan
Tipe Data XSD base64Binary, durasi, ENTITES, hexBinary, IDREFS, long, NMTOKENS, dan unsignedLong tidak didukung untuk promosi.
Batasan untuk Mempromosikan Properti
Saat mempromosikan properti, pertimbangkan hal berikut:
Properti yang dipromosikan dibatasi hingga 256 karakter sementara properti tertulis tidak memiliki batasan panjang.
Properti yang dipromosikan digunakan dalam perutean pesan dan berukuran terbatas karena alasan efisiensi dalam perbandingan dan penyimpanan. Meskipun properti tertulis tidak memiliki batasan ukuran yang keras, menggunakan nilai yang terlalu besar dalam konteks akan berdampak pada performa, karena nilai-nilai tersebut masih harus diproses dan diteruskan dengan pesan. Bidang Yang Dibedakan adalah contoh properti tertulis.
Node rekaman tidak pernah dapat dipromosikan sebagai Bidang Khusus.
Properti yang dipromosikan dibatasi untuk elemen/atribut yang tidak berulang.
Jangan promosikan bidang milik simpul akar yang sama ke properti yang sama. Promosi tersebut menghasilkan kesalahan kompilasi atau penyebaran.
Dalam konteks pesan, ada beberapa properti yang tidak tersedia karena tidak dipromosikan. The BTS. Properti ReceiveLocationName adalah salah satu properti tersebut. Jika Anda dapat menambahkan skema properti baru atau proyek BizTalk Server baru ke pengembangan Anda, dimungkinkan untuk mengakses properti ini dari dalam orkestrasi.
Nilai properti diidentifikasi oleh namespace target properti dan nama properti. Contoh berikut menunjukkan cara mengakses lokasi penerimaan dalam kode.
string receiveLocationName = pInMsg.Context.Read("ReceiveLocationName", sysNamespace);