tipe_halaman | bahasa | produk | nama | keterangan | |||
---|---|---|---|---|---|---|---|
mencicipi |
|
| Memperluas Commerce POS, HWS dan Headless Commerce API serta runtime Commerce. | Repo ini berisi kode contoh tentang cara memperluas POS Dynamics 365 Commerce, Stasiun perangkat keras, API Headless Commerce, dan runtime Commerce. |
Repo ini berisi kode contoh cara menyesuaikan POS, Hardware Station (HWS) dan Commerce runtime (CRT), Headless Commerce API, dan database saluran. Harap perhatikan bahwa ini hanya sampel dan tidak perlu mengkloning repo ini untuk mengembangkan ekstensi Dynamics 365 Commerce. Topik ini berlaku untuk aplikasi Dynamics 365 commerce versi 10.0.18 atau lebih tinggi.
File ini menjelaskan struktur repo sampel InStore dan menjelaskan cara menyiapkan repo untuk mereferensikan paket nuget Commerce SDK dari umpan publik untuk pengembangan ekstensi Dynamics 365 Commerce. Silakan kunjungi situs dokumen kami untuk sumber daya tambahan tentang pengembangan Dynamics 365 Commerce.
Proses ini tidak memerlukan lingkungan atau mesin virtual tertentu yang telah dikonfigurasi sebelumnya. Pengembangan dan pengujian dapat dilakukan pada mesin apa pun dengan versi Windows yang relatif modern. Jika Anda tidak memerlukan pengembangan POS Modern, Anda dapat memanfaatkan Windows 10, Windows Server 2016/2019. Jika Anda memerlukan pengembangan POS Modern Tersegel, instal prasyarat berikut. Untuk rincian lebih lanjut tentang prasyarat lingkungan pengembangan, silakan merujuk ke artikel ini
Contoh repo InStore berisi nuget.config, repo.props, CustomizationPackage.props, dan skrip saluran pipa build yang memberikan panduan tentang cara ekstensi dapat menyiapkan file metadata repo.
Map | Keterangan |
---|---|
Sampel Stasiun Perangkat Keras | Proyek ini berisi contoh cara membuat stasiun Perangkat Keras, ekstensi Pembayaran, dan penginstal ekstensi. |
Sampel StoreCommerce | Folder ini berisi contoh yang menunjukkan cara memperluas Aplikasi Store Commerce untuk mencapai berbagai skenario penyesuaian. |
Sampel Kemasan | Folder ini berisi contoh yang menunjukkan cara menyusun solusi Commerce SDK Anda untuk membuat paket/penginstal untuk komponen Commerce yang sesuai. |
Saluran pipa | File skrip YAML dan PowerShell |
Repo Dynamics365Commerce.ScaleUnit berisi sampel tambahan yang berfokus pada skenario pengembangan ekstensi Headless Commerce seperti API Headless Commerce dan Commerce Runtime.
Setiap sampel dalam repo ini disertai dengan file readme.md dengan informasi berikut:
Deskripsi fungsinya
Langkah-langkah untuk membuat dan menjalankan sampel
Daftar API Commerce dan titik ekstensi yang digunakan dalam sampel dan deskripsi fungsinya.
Tautan ke dokumentasi yang relevan mengenai API Commerce dan area fitur
Gif atau tangkapan layar dari fungsi tersebut, jika ada
Tim Commerce telah membangun otomatisasi yang memvalidasi bahwa semua sampel dalam repo ini berhasil dibuat, namun hal itu tidak menjamin bahwa sampel ini akan selalu dibuat dan dijalankan tanpa masalah yang umum terjadi selama pengembangan perangkat lunak. Jika Anda mengalami masalah dengan sampel InStore atau Commerce SDK di silakan telusuri bagian masalah di repo Github ini untuk melihat apakah itu merupakan masalah umum. Mungkin sudah ada perbaikan atau solusi yang tersedia.
Jika Anda tidak melihat masalah Anda tercantum di bagian masalah, harap buat masalah baru dengan rincian tentang masalah yang Anda hadapi. Hal ini akan membantu memastikan bahwa semua orang yang menggunakan Commerce SDK dan sampel ini mendapatkan pengalaman terbaik, dan semua masalah yang diketahui akan dapat ditelusuri secara online. Kami akan memantau masalah ini dan membantu sesegera mungkin.
Catatan: Untuk pengalaman terbaik, harap batasi penggunaan bagian masalah untuk melaporkan masalah dengan Commerce SDK dan sampel InStore.
Cabang di repo diatur berdasarkan rilis aplikasi Dynamics 365 Commerce, setiap cabang di repo menunjuk ke rilis aplikasi Dynamics 365 Commerce, gunakan cabang rilis yang tepat berdasarkan versi go-live Anda.
Rilis nama cabang | versi | Versi rilis aplikasi |
---|---|---|
Rilis/9.49 | 9.49.* | 10.0.39 |
Rilis/9.50 | 9.50.* | 10.0.40 |
Rilis/9.51 | 9.51.* | 10.0.41 |
Rilis/9.52 | 9.52.* | 10.0.42 |
Kontrak perdagangan, pesan, entitas, dan paket permintaan diterbitkan dalam umpan publik ini untuk kode ekstensi perdagangan guna menggunakan dan menyesuaikan fungsi yang ada atau membangun fungsi baru untuk produk Dynamics 365 Commerce.
Gunakan paket perdagangan dari lokasi ini, ekstensi dapat menambahkan lokasi sumber paket di nuget.config file proyek ekstensinya.
<Sumber Paket> <tambahkan key="dynamics365-commerce" value="https://pkgs.dev.azure.com/commerce-partner/Registry/_packaging/dynamics365-commerce/nuget/v3/index.json" /> <tambahkan key="nuget.org" value="https://api.nuget.org/v3/index.json" /> </sumber paket>
Nama paket | Keterangan |
---|---|
Microsoft.Dynamics.Commerce.Sdk.ChannelDatabase | Paket ini diperlukan untuk menghasilkan paket DB dengan CSU. |
Microsoft.Dynamics.Commerce.Sdk.Runtime | Paket ini berisi semua perpustakaan runtime perdagangan |
Microsoft.Dynamics.Commerce.Sdk.ScaleUnit | Paket ini diperlukan untuk menghasilkan paket CSU untuk penerapan. |
Microsoft.Dynamics.Commerce.Sdk.Installers.ScaleUnit | Paket ini diperlukan untuk menghasilkan paket ScaleUnit untuk penerapan |
Microsoft.Dynamics.Commerce.Sdk.HardwareAndPeripherals | Paket ini berisi semua perpustakaan stasiun Perangkat Keras dan periferal perdagangan |
Microsoft.Dynamics.Commerce.Sdk.Installer | Paket ini berisi semua perpustakaan penginstal |
Microsoft.Dynamics.Commerce.Sdk.Installers.HardwareStation | Paket ini diperlukan untuk menghasilkan paket stasiun Perangkat Keras untuk penerapan |
Microsoft.Dynamics.Commerce.Sdk.Installer.StoreCommerce | Paket ini diperlukan untuk menghasilkan penginstal ekstensi Store Commerce. |
Microsoft.Dynamics.Commerce.Sdk.Pos | Paket ini berisi semua perpustakaan POS |
Microsoft.Dynamics.Commerce.Sdk.Installers.ModernPos | Paket ini diperlukan untuk menghasilkan penginstal ekstensi POS untuk penerapan |
Microsoft.Dynamics.Commerce.Diagnostik | Paket ini berisi semua perpustakaan diagnostik |
Microsoft.Dynamics.Commerce.Runtime.Data | Paket ini berisi semua pustaka kontrak data |
Microsoft.Dynamics.Commerce.Runtime.DataServices.Messages | Paket ini berisi semua perpustakaan pesan layanan data |
Microsoft.Dynamics.Commerce.Runtime.Entitas | Paket ini berisi semua definisi entitas perdagangan |
Microsoft.Dynamics.Commerce.Runtime.Framework | Paket ini berisi semua pustaka kerangka perdagangan |
Microsoft.Dynamics.Commerce.Runtime.Hosting.Kontrak | Paket ini berisi semua perpustakaan pengontrol perdagangan |
Microsoft.Dynamics.Commerce.Runtime.Messages | Paket ini berisi semua perpustakaan pesan runtime perdagangan |
Microsoft.Dynamics.Commerce.Runtime.RealtimeServices.Messages | Paket ini berisi semua perpustakaan runtime nyata perdagangan |
Microsoft.Dynamics.Commerce.Runtime.Layanan.Pesan | Paket ini berisi semua perpustakaan pesan layanan perdagangan |
Microsoft.Dynamics.Commerce.HardwareStation.Core | Paket ini berisi semua perpustakaan HWS |
Microsoft.Dynamics.Commerce.HardwareStation.PeripheralRequests | Paket ini berisi semua perpustakaan permintaan periferal HWS |
Microsoft.Dynamics.Commerce.HardwareStation.Peripherals.Contracts | Paket ini berisi semua pustaka kontrak periferal HWS |
Microsoft.Dynamics.Commerce.HardwareStation.Peripherals.Entitas | Paket ini berisi semua perpustakaan entitas periferal HWS |
Microsoft.Dynamics.Commerce.Installer.Framework | Paket ini berisi semua pustaka kerangka penginstal |
Microsoft.Dynamics.Commerce.KeyVault.Kontrak | Paket ini berisi semua pustaka kontrak brankas kunci |
Microsoft.Dynamics.Commerce.PaymentSDK.Extensions.Portable | Paket ini berisi semua perpustakaan ekstensi pembayaran |
Microsoft.Dynamics.Commerce.PaymentSDK.Portable | Paket ini berisi semua perpustakaan pembayaran |
Microsoft.Dynamics.Commerce.Runtime.FIF.Connector.Messages | Paket ini berisi semua perpustakaan konektor FIF |
Microsoft.Dynamics.Commerce.Runtime.FIF.DocumentProvider.Messages | Paket ini berisi semua perpustakaan penyedia dokumen FIF |
Microsoft.Dynamics.Commerce.Installers.Framework.DatabaseExtensions | Paket ini berisi semua pustaka kerangka penginstal database |
Microsoft.Dynamics.Commerce.Tools.DbUtilities | Paket ini berisi semua perpustakaan utilitas DB |
Microsoft.Dynamics.Commerce.Tools.ExtensionsProxyGenerator.AspNetCore | Paket ini berisi semua utilitas generator proxy ekstensi |
Microsoft.Dynamics.Commerce.Proxy.ScaleUnit | Paket ini berisi semua kelas proxy untuk aplikasi ekstensi untuk menggunakan API Headless Commerce dalam mode online (terhubung ke Headless Commerce). |
Versi paket | Rilis aplikasi |
---|---|
9.49.xx-pratinjau | 10.0.39 Rilis PEAP |
9.49.xx | 10.0.39 Pratinjau pelanggan |
9.49.xx | 10.0.39 GA |
9.50.xx-pratinjau | 10.0.40 rilis PEAP |
9.50.xx | 10.0.40 Pratinjau pelanggan |
9.50.xx | 10.0.40 GA |
9.51.xx-pratinjau | 10.0.41 Rilis PEAP |
9.51.xx | 10.0.41 Pratinjau pelanggan |
9.51.xx | 10.0.41 GA |
9.52.xx-pratinjau | 10.0.42 Rilis PEAP |
9.52.xx | 10.0.42 Pratinjau pelanggan |
9.52.xx | 10.0.42 GA |
Proyek ekstensi dapat menggunakan versi yang benar dengan menambahkan referensi paket ke proyek dengan nomor versi lengkap atau menggunakan wild card untuk selalu mendapatkan versi terbaru, opsi yang disarankan adalah menggunakan nomor versi lengkap dan memperbarui versi berdasarkan versi go-live Anda .
<PackageReference Include="Microsoft.Dynamics.Commerce.Sdk.Pos " Version="9.52.xx" />
Atau
<PackageReference Include="Microsoft.Dynamics.Commerce.Sdk.Pos " Version="9.52.*" />
Dengan setiap perbaikan terbaru dan rilis aplikasi baru, versi baru paket akan dipublikasikan di feed publik yang sama, gunakan versi paket yang tepat berdasarkan versi yang diperlukan untuk peluncuran Anda. Mengonsumsi versi paket yang lebih tinggi dibandingkan versi aplikasi go-live Anda dapat mengakibatkan kegagalan runtime dan penerapan.
Siapkan alur Azure DevOps untuk otomatisasi build dan pembuatan paket:
Siapkan alur build untuk Commerce SDK
Praktik terbaik dan strategi percabangan:
Informasi terperinci tentang strategi percabangan git lihat dokumen strategi percabangan Git.
Strategi percabangan berikut didasarkan pada cara kami menggunakan Git di Microsoft. Untuk informasi selengkapnya, lihat Cara kami menggunakan Git di Microsoft.
Jaga agar strategi cabang Anda tetap sederhana. Bangun strategi Anda dari tiga konsep berikut:
Gunakan cabang fitur untuk semua fitur baru dan perbaikan bug.
Gabungkan cabang fitur ke dalam cabang utama menggunakan permintaan tarik.
Pertahankan cabang utama yang berkualitas tinggi dan terkini.
Buat cabang fitur baru untuk pengembangan dan perbaikan bug:
Buat cabang utama fitur baru untuk ekstensi kami, ikuti konvensi penamaan yang tepat (lihat dokumen percabangan Git untuk contoh konvensi penamaan)
Buat cabang pengembangan baru:
Buat cabang pribadi untuk pengembangan:
git checkout -b pribadi/{nama pengguna}/{fitur/deskripsi}
Tambahkan dan lakukan perubahan baru pada cabang pengembangan menggunakan git -add . dan git commit -m" pesan komit."
Setelah pengembangan selesai, diuji, dan divalidasi, dorong perubahan ke cabang utama dengan melakukan git push <remote> <cabang>
git push origin {nama cabang pribadi}
Buat cabang rilis setelah pengembangan:
Setelah perubahan pengembangan dimasukkan ke cabang utama, buat cabang rilis baru, dan buat paket yang dapat diterapkan dari cabang rilis.
Git checkout -b rilis/xxx
Gabungkan perubahan dari cabang rilis kembali ke cabang utama jika ada perubahan yang dilakukan di cabang rilis.
- git checkout master git merge release/x.x.x
Cabang perbaikan terbaru ekstensi:
Seperti cabang rilis, buat cabang perbaikan terbaru untuk ekstensi dari cabang utama dan lepaskan perbaikan lalu gabungkan perubahan kembali ke cabang utama.
Gabungkan cabang rilis baru ke cabang utama dan pengembangan:
Setelah sampel versi baru dirilis, jika perlu, gabungkan cabang pengembangan Anda dengan cabang baru. Repo hanya berisi sampel, jadi tidak perlu selalu mendapatkan perubahan terbaru dari cabang.
- git checkout master git merge release/x.x.x