SubmitDirect (Sampel Server BizTalk)
Sampel SubmitDirect menunjukkan cara mengirimkan pesan satu arah dan permintaan/respons secara terprogram ke Microsoft BizTalk Server dari . Aplikasi berbasis NET. Sampel menunjukkan penggunaan API BizTalk Server untuk adaptor. Ini juga menyediakan adaptor penerima, bernama Kirim, yang dapat digunakan untuk mengirimkan pesan ke BizTalk Server.
Prasyarat
Sebelum menjalankan sampel ini, pastikan Anda masuk sebagai pengguna yang termasuk dalam grup Pengguna Host Terisolasi BizTalk.
Apa yang Dilakukan Sampel Ini
Sampel ini menunjukkan cara melakukan berbagai tugas yang terkait dengan adaptor BizTalk. Secara khusus, ini menunjukkan cara:
Bekerja dengan adaptor terisolasi yang berjalan di luar proses BizTalk Server. Adaptor Kirim adalah adaptor terisolasi karena dibuat oleh proses di luar proses BizTalk Server (Anda memulainya sebagai aplikasi .NET).
Kirim batch pesan ke BizTalk Server. Adaptor Kirim menggunakan fungsionalitas pengiriman pesan batch untuk mengirimkan beberapa pesan sekaligus.
Kirim pesan secara sinkron menggunakan paradigma permintaan/respons, serta secara asinkron menggunakan paradigma satu arah.
Daftarkan adaptor dengan BizTalk Server. Sampel ini menunjukkan cara mendaftarkan adaptor dan menyediakan pendaftaran yang dapat dieksekusi yang mengotomatiskan pendaftaran adaptor.
Sampel ini sebenarnya adalah dua sampel dalam satu, sebagai berikut:
Pengiriman batch pesan satu arah. Aplikasi konsol SubmitMessages.exe mengambil string dari baris perintahnya dan mengirimkan masing-masing sebagai pesan terpisah ke BizTalk Server. Masing-masing pesan yang dikirimkan ini diambil di lokasi terima oleh BizTalk Server, dikirim melalui penerimaan pass-through dan mengirim alur, lalu ditulis ke file teks.
Pengiriman pesan permintaan/respons. Aplikasi konsol SubmitRequest.exe mengambil file .xml yang ditentukan pada baris perintahnya dan mengirimkannya ke BizTalk Server. Skema file .xml ini mendefinisikan elemen yang berisi dua bidang bilangan bulat. BizTalk Server mengambil file .xml dan memprosesnya dengan orkestrasi (dengan satu port permintaan/respons). Ini menggunakan peta untuk menghasilkan pesan respons XML yang mengembalikan bilangan bulat yang merupakan produk dari dua bilangan bulat dalam permintaan. Ketika aplikasi konsol menerima respons, aplikasi akan menampilkan hasilnya.
Tempat Menemukan Sampel Ini
< Jalur> Sampel\AdaptersDevelopment\SubmitDirect\
Tabel berikut mencantumkan file dalam sampel ini dan menjelaskan tujuannya.
File | Deskripsi |
---|---|
Cleanup.bat | Membatalkan penyebaran rakitan dan menghapusnya dari cache perakitan global (GAC); menghapus port kirim dan terima; menghapus direktori virtual Microsoft Internet Information Services (IIS) sesuai kebutuhan. |
Setup.bat | Menyusun dan menginisialisasi sampel ini. |
SubmitDirect.sln | File solusi yang menyertakan proyek BizTalk di folder ProcessRequest dan proyek Microsoft Visual C# di folder lain. |
SubmitMessagesBinding.xml, SubmitRequestBinding.xml | Digunakan untuk penyiapan otomatis seperti pengikatan port. |
Di folder \ProcessRequest: DocIn.xsd, DocOut.xsd, Multiplier.odx, Multiply.btm, ProcessRequest.btproj |
Menyediakan proyek BizTalk yang melakukan perkalian bilangan bulat dalam skenario permintaan/respons. |
Di folder \SubmitMessages: AssemblyInfo.cs, SubmitMessages.cs, SubmitMessages.csproj |
Menyediakan proyek Visual C# untuk aplikasi konsol yang meneruskan parameter string baris perintahnya sebagai batch pesan terpisah. |
Di folder \SubmitRequest: AssemblyInfo.cs, DocInstance.xml, SubmitRequest.cs, SubmitRequest.csproj |
Menyediakan proyek C# untuk aplikasi konsol yang meneruskan file .xml (DocInstance.xml) yang berisi dua bilangan bulat yang akan dikalikan. |
Di folder \TransportProxyUtils: AssemblyInfo.cs, MessageHelper.cs, MessagingAPIInterface.cs, MessagingAPIs.cs, ResponseCallBack.cs, TpBatchAsyncCallback.cs, TpBatchAsyncResult.cs, TpBatchStatus.cs, TransportProxyUtils.csproj |
Menyediakan proyek C# untuk bagian run-time adaptor Kirim yang mengimplementasikan metode untuk pengiriman pesan sinkron dan asinkron, dan untuk pengiriman pesan batch dan permintaan tunggal. |
Di folder \TransportProxyUtilsReg: AssemblyInfo.cs, RegisterAdapter.cs, TransportProxyUtilsReg.csproj |
Menyediakan proyek Visual C# yang menunjukkan kode yang dapat Anda gunakan untuk mendaftarkan adaptor dengan BizTalk Server. |
Di folder \TransportProxyUtilsUI: AssemblyInfo.cs, TransportProxyUtilsMgmt.cs, TransportProxyUtilsUI.csproj |
Menyediakan proyek Visual C# untuk bagian antarmuka pengguna dari adaptor Kirim. |
Membangun dan Menginisialisasi Sampel
Untuk membangun dan menginisialisasi sampel SubmitDirect
Di jendela perintah, navigasikan ke folder berikut:
< Jalur> Sampel\AdaptersDevelopment\SubmitDirect
Jalankan file Setup.bat, yang melakukan tindakan berikut:
Membuat folder output berikut untuk bagian pengiriman batch dari sampel ini.
< Jalur> Sampel\AdaptersDevelopment\SubmitDirect\Out
Kompilasi berbagai proyek Visual Studio untuk sampel ini.
Mendaftarkan adaptor Kirim dengan BizTalk Server.
Membuat dan mengikat lokasi penerima BizTalk Server, serta port kirim dan terima.
Catatan
Sampel ini menampilkan peringatan berikut saat membuat dan mengikat port:
Warning: Receive handler not specified for receive location "SubmitDirectRL"; updating with first receive handler with matching transport type.
Warning: Host not specified for orchestration "Microsoft.Samples.BizTalk.ProcessRequest.Multiplier"; updating with first available host.
Anda dapat mengabaikan peringatan ini dengan aman. (Untuk mengakomodasi kemungkinan perbedaan penamaan dalam penginstalan pengguna, nama host dan handler penerima telah dihilangkan dari file pengikatan.)
Mengaktifkan lokasi terima, dan memulai port pengiriman dan orkestrasi.
Catatan
Anda harus mengonfirmasi bahwa BizTalk Server tidak melaporkan kesalahan apa pun selama proses build dan inisialisasi sebelum mencoba menjalankan sampel ini.
Catatan
Jika Anda memilih untuk membuka dan membangun proyek dalam sampel ini tanpa menjalankan Setup.bat file, Anda harus terlebih dahulu membuat pasangan kunci nama yang kuat menggunakan Utilitas Nama Kuat .NET Framework (sn.exe). Gunakan pasangan kunci ini untuk menandatangani rakitan yang dihasilkan.
Catatan
Untuk membatalkan perubahan yang dibuat oleh Setup.bat, jalankan Cleanup.bat. Anda harus menjalankan Cleanup.bat sebelum menjalankan Setup.bat untuk kedua kalinya.
Menjalankan Sampel
Karena sampel ini menggunakan adaptor File, host BizTalk (BizTalkServerApplication) harus berjalan. Gunakan prosedur berikut untuk menjalankan sampel SubmitDirect.
Untuk menjalankan bagian pengiriman batch dari sampel SubmitDirect
Di jendela perintah, navigasikan ke folder berikut:
< Jalur> Sampel\AdaptersDevelopment\SubmitDirect\SubmitMessages\bin\Debug
Jalankan file SubmitMessages.exe, meneruskan beberapa string pada baris perintah.
Contoh: SubmitMessages msg1 msg2 msg3
Amati beberapa file teks yang dibuat di folder output Keluar. File-file ini berisi string yang diteruskan pada baris perintah, satu per file.
Untuk menjalankan bagian permintaan/respons dari sampel SubmitDirect
Di jendela perintah, navigasikan ke folder berikut:
< Jalur> Sampel\AdaptersDevelopment\SubmitDirect\SubmitRequest\bin\Debug
Jalankan file SubmitRequest.exe, meneruskan nama file .xml yang sesuai pada baris perintah.
Contoh: SubmitRequest .. \.. \DocInstance.xml
Amati pesan XML respons, yang berisi hasil operasi perkalian, yang ditampilkan ke konsol.
Komentar
Anda dapat menggunakan adaptor Kirim di aplikasi lain. Anda dapat menggunakannya dari apa pun. Kode berbasis NET untuk mengirimkan pesan ke BizTalk Server Anda secara terprogram. Untuk menggunakan adaptor ini dengan kode Anda, gunakan prosedur berikut.
Untuk menggunakan adaptor sampel dengan kode Anda
Daftarkan adaptor Kirim dengan BizTalk Server Anda. Jika Anda telah menjalankan file Setup.bat disediakan dengan sampel ini, adaptor harus didaftarkan dan siap digunakan. Jika tidak, Anda dapat mendaftarkannya dengan membangun proyek TransportProxyUtils.csproj, TransportProxyUtilsUI.csproj, dan TransportProxyUtilsReg.csproj, lalu menjalankan executable yang diproduksi oleh proyek terakhir, RegisterAdapter.exe.
Penting
Jika Anda menginstal BizTalk pada komputer 64 bit, ubah semua instans entri registri HKEY_CLASSES_ROOT\CLSID\ ke HKEY_CLASSES_ROOT\Wow6432Node\CLSID\ dalam file RegisterAdapter.cs .
Buat port penerima dengan lokasi terima yang menggunakan adaptor Kirim. Tentukan alamat lokasi penerimaan. Alamat dapat berupa string apa pun yang unik dalam lokasi terima yang menggunakan adaptor ini.
Referensikan Microsoft.BizTalk.SDKSamples.AdaptersDevelopment.TransportProxyUtils.dll perakitan di proyek Visual Studio Anda.
Kirim pesan ke BizTalk Server Anda dengan menggunakan satu atau beberapa metode berikut yang disediakan oleh perakitan ini.
Metode Deskripsi SubmitMessage()
BeginSubmitMessage()
EndSubmitMessage()Metode sinkron dan asinkron untuk mengirimkan pesan satu arah ke BizTalk Server. Alamat lokasi terima tempat pesan dikirimkan harus diatur pada konteks pesan.
Nilai Boolean yang menunjukkan status pengiriman (berhasil/gagal) dikembalikan.SubmitMessages()
BeginSubmitMessages()
EndSubmitMessages()Metode sinkron dan asinkron untuk mengirimkan array pesan satu arah ke BizTalk Server. Alamat lokasi penerima tempat pesan dikirimkan harus diatur pada konteks pesan.
Nilai Boolean yang menunjukkan status pengiriman (berhasil/gagal) dikembalikan.SubmitSyncMessage()
BeginSubmitSyncMessage()
EndSubmitSyncMessage()Metode sinkron dan asinkron untuk mengirimkan pesan permintaan ke BizTalk Server. Alamat lokasi terima tempat pesan dikirimkan harus diatur pada konteks pesan.
Pesan respons dikembalikan.CreateMessageFromString() Membuat objek pesan BizTalk Server dari string dan mengatur properti alamat lokasi penerima pada konteks pesan.
Mengembalikan objek pesan BizTalk.CreateMessageFromStream() Membuat objek pesan BizTalk Server dari aliran dan mengatur properti alamat lokasi penerima pada konteks pesan.
Mengembalikan objek pesan BizTalk Server.Untuk detail tentang parameter dan jenis pengembalian untuk metode ini, lihat file MessagingAPIInterface.cs di folder TransportProxyUtils.