Cipta pakej untuk alat Package Deployer
Package Deployer membenarkan pentadbir menggunakan pakej pada tika Microsoft Dataverse. Pakej boleh terdiri daripada mana-mana atau semua berikut:
- Satu atau lebih Dataverse fail penyelesaian.
- Fail rata atau fail data konfigurasi dieksport daripada alat Pemindahan Konfigurasi. Untuk maklumat lanjut tentang alat, lihat Alihkan data konfigurasi merentas tika dan organisasi dengan alat Pemindahan Konfigurasi.
- Kod tersuai yang boleh dijalankan sebelum, semasa, atau selepas pakej dilaksanakan ke tika Dataverse.
- Kandungan HTML khusus untuk pakej yang boleh dipaparkan pada permulaan dan penghujung proses pelaksanaan. Ini boleh menjadi berguna untuk memberikan penerangan tentang penyelesaian dan fail-fail yang digunakan di dalam pakej.
Visual Studio 2015 atau templat yang kemudian (tersedia untuk muat turun) digunakan untuk mencipta pakej. Selepas mencipta pakej, gunakan alat Package Deployer untuk melaksanakan pakej anda ke tika Dataverse.
Prasyarat
- Pastikan anda bersedia dengan penyelesaian dan fail yang anda mahu masukkan ke dalam pakej.
- Microsoft .NET Framework 4.6.2
- Visual Studio 2015 or versi kemudian
- NuGet Package Manager untuk Visual Studio 2015
- Templat Microsoft Dynamics CRM SDK untuk Visual Studio yang mengandungi templat pakej. Anda boleh dapatkannya dengan memuat turun Templat Microsoft Dynamics CRM SDK dan klik dua kali fail
CRMSDKTemplates.vsixuntuk memasangkan templat Visual Studio.
Cipta pakej
Lakukan lima langkah berikut untuk mencipta pakej:
- Langkah 1: Cipta projek menggunakan templat
- Langkah 2: Tambah fail anda ke projek
- Langkah 3: Kemas kini fail HTML
- Langkah 4: Tentukan nilai konfigurasi untuk projek
- Langkah 5: Takrif kod tersuai untuk pakej anda
Langkah 1: Cipta projek menggunakan templat
Mulakan Visual Studio dan cipta projek baharu.
Dalam kotak dialog Projek Baharu:
- Daripada senarai templat yang dipasang, kembangkan Visual C#, dan pilih Templat SDK Dynamics 365.
- Pastikan .NET Framework 4.6.2 dipilih.
- Pilih Pakej Dynamics 365.
- Tentukan nama serta lokasi projek dan klik OK.

Langkah 2: Tambah fail anda ke projek
- Dalam anak tetingkap Peneroka Penyelesaian, tambah penyelesaian dan fail anda di bawah folder PkgFolder.
- Untuk setiap fail yang anda tambah di bawah folder PkgFolder dalam anak tetingkap Sifat, tetapkan nilai Salin ke Direktori Output kepada Sentiasa Salin. Ini memastikan fail anda tersedia dalam pakej yang dijana.
Langkah 3: Kemas kini fail HTML: Bahasa Inggeris dan bahasa lain
Dalam anak tetingkap Peneroka Penyelesaian, kembangkan PkgFolder > Kandungan > ms-my. Anda akan menemui dua folder yang dipanggil
EndHTMLdanWelcomeHTML. Folder ini mengandungi fail HTML dan berkaitan yang mendayakan anda untuk memaparkan maklumat pada penghujung dan permulaan proses pelaksanaan pakej. Edit fail dalam folder HTML fail ini untuk menambahkan maklumat untuk pakej anda.Anda juga boleh menambah fail HTML ke dalam pakej anda dalam bahasa lain supaya kandungan HTML dipaparkan dalam bahasa yang berasaskan tetapan setempat bagi komputer pengguna. Untuk berbuat demikian:
- Cipta salinan folder ms-my di bawah PkgFolder > Kandungan.
- Namakan semula folder yang disalin ke bahasa yang sesuai. Contohnya, untuk bahasa Sepanyol, namakannya semula ke es-ES.
- Ubah suai kandungan fail HTML untuk menambah kandungan Bahasa Sepanyol.
Langkah 4: Tentukan nilai konfigurasi untuk projek
Takrifkan konfigurasi pakej dengan menambah maklumat tentang pakej anda dalam fail ImportConfig.xml tersedia dalam PkgFolder. Klik dua kali fail bagi membukanya untuk mengedit. Senarai berikut menyediakan maklumat tentang setiap parameter dan nod dalam fail konfigurasi.
installsampledata
TrueataufalseJikatrue, pasangkan data sampel ke tika Dataverse. Ini adalah data sampel yang sama yang boleh anda pasang daripada kawasan Tetapan > Pengurusan Data dalam Dataverse.waitforsampledatatoinstall
Benar atau palsu. Jika benar dan jika installsampledata juga ditetapkan ke benar, tunggu data sampel untuk pasang sebelum melaksanakan pakej.Nota
Pastikan anda tetapkan installsampledata ke benar jika anda menetapkan
waitforsampledatatoinstallke benar.agentdesktopzipfile
Nama fail bagi fail zip untuk dibuka. Jika anda menentukan nama fail .zip di sini, ia akan menambah skrin semasa proses pelaksanaan pakej yang menggesa anda untuk memilih lokasi di mana anda mahu membuka kandungan fail.Kebiasaannya ini digunakan untuk mencipta pakej bagi Unified Service Desk untuk Dynamics 365. Untuk maklumat lanjut tentang Unified Service Desk, lihat Panduan Pentadbiran untuk Unified Service Desk 3.0.
agentdesktopexename
Nama fail .exe atau .msi dalam fail zip atau URL untuk dipanggil pada penghujung proses pelaksanaan.Kebiasaannya ini digunakan untuk mencipta pakej bagi Unified Service Desk.
crmmigdataimportfile
Nama fail bagi fail data konfigurasi lalai (.zip) dieksport menggunakan alat Pemindahan Konfigurasi.Anda juga boleh mengimport fail data konfigurasi bagi versi disetempatkan berasaskan ID setempat (LCID) yang ditentukan menggunakan tetapan masa jalanan apabila menjalankan package deployer. Gunakan nod
<cmtdatafile>(diterangkan kemudian) untuk menentukan fail data konfigurasi bagi versi disetempatkan dalam pakej dan kemudian gunakan kaedahOverrideConfigurationDataFileLanguage(diterangkan kemudian) untuk menentukan logik mengimport fail data konfigurasi berasaskan pada ID setempat yang ditentukan menggunakan tetapan masa jalanan. Anda tidak boleh mengimport lebih daripada satu fail data konfigurasi menggunakan pakej pada satu masa.Untuk Dataverse (di premis), jika fail data konfigurasi anda mengandungi maklumat pengguna dan kedua-dua tika sumber dan sasaran Dataverse adalah dalam Domain Active yang sama, maklumat pengguna akan diimport ke tika sasaran Dataverse. Untuk mengimport maklumat pengguna ke tika Dataverse (di premis) dalam domain yang berbeza, anda mesti memasukkan fail peta pengguna (.xml) dijana menggunakan alat Pemindahan Konfigurasi dalam projek anda dan tentukannya bersama dengan fail data konfigurasi menggunakan atribut
usermapfilenamedalam nod<cmtdatafile>yang diterangkan kemudian. Maklumat pengguna tidak boleh diimport ke tika Dataverse.
<solutions>nod
Mengandungi tatasusunan nod<configsolutionfile>yang menggambarkan penyelesaian untuk mengimport. Pesanan penyelesaian di bawah nod ini menunjukkan pesanan penyelesaian yang akan diimport pada tika Dataverse sasaran.<configsolutionfile>nod
Gunakan nod di bawah nod<solutions>untuk menentukan penyelesaian individu dan maklumat berikut untuk setiap penyelesaian yang akan diimport:solutionpackagefilename: Tentukan nama fail penyelesaian .zip anda. Diperlukan.overwriteunmanagedcustomizations: Tentukan sama ada untuk menulis ganti penyesuaian yang tidak terurus semasa mengimport penyelesaian yang telah wujud dalam tika Dynamics 365 sasaran. Ini adalah pilihan dan jika anda tidak menentukan atribut ini, secara lalai penyesuaian tidak terurus dalam penyelesaian sedia ada dikekalkan pada tika Dynamics 365 sasaran.publishworkflowsandactivateplugins: Tentukan sama ada untuk menerbitkan aliran kerja dan pasang masuk diaktifkan dalam tika Dynamics 365 selepas penyelesaian diimport. Ini adalah pilihan dan jika anda tidak menentukan atribut ini, secara lalai aliran kerja akan diterbitkan dan pasang masuk diaktifkan selepas penyelesaian diimport pada tika Dynamics 365 sasaran.Anda boleh menambah berbilang nama fail penyelesaian dengan menambah seberapa banyak nod
<configsolutionfile>. Contohnya, jika anda mahu mengimport tiga fail penyelesaian, tambahkannya seperti ini:
<solutions> <configsolutionfile solutionpackagefilename="SampleSolutionOne_1_0_managed.zip" overwriteunmanagedcustomizations="false" publishworkflowsandactivateplugins="true"/> <configsolutionfile solutionpackagefilename="SampleSolutionTwo_1_0_managed.zip" overwriteunmanagedcustomizations="false" publishworkflowsandactivateplugins="true"/> <configsolutionfile solutionpackagefilename="SampleSolutionThree_1_0_managed.zip" /> </solutions><filestoimport>nod
Mengandungi tatasusunan<configimportfile>dan nod<zipimportdetails>yang digunakan untuk menggambarkan fail individu dan fail zip masing-masing untuk diimport.<configimportfile>nod
Gunakan nod di bawah nod<configimportfile>bagi menggambarkan fail untuk diimport ke Dataverse. Anda boleh menambah berbilang fail dalam pakej dengan menambah seberapa banyak nod<configimportfile>.<filestoimport> <configimportfile filename="File.csv" filetype="CSV" associatedmap="FileMap" importtoentity="FileEntity" datadelimiter="" fielddelimiter="comma" enableduplicatedetection="true" isfirstrowheader="true" isrecordownerateam="false" owneruser="" waitforimporttocomplete="true" /> <configimportfile filename="File.zip" filetype="ZIP" associatedmap="FileMapName" importtoentity="FileEntity" datadelimiter="" fielddelimiter="comma" enableduplicatedetection="true" isfirstrowheader="true" isrecordownerateam="false" owneruser="" waitforimporttocomplete="true"/> </filestoimport>Ini mempunyai atribut berikut:
Atribut Penerangan filenameNama fail yang mengandungi data import. Jika fail adalah fail .zip, nod <zipimportdetails>mesti wujud dengan nod<zipimportdetail>untuk setiap fail dalam fail .zip.filetypeIni boleh csv, xml, atau zip. associatedmapNama peta data import Dataverse untuk digunakan dengan fail. Jika kosong, cuba gunakan nama peta data import yang ditentukan oleh sistem untuk fail ini. importtoentityBoleh jadi nama exe dalam fail zip, URL atau fail .msi bagi menyediakan pautan untuk digunakan pada penghujung proses. datadelimiterNama pembatas data yang digunakan dalam fail import. Nilai sah ialah singlequote atau doublequote. fielddelimiterNama pembatas medan yang digunakan dalam fail import. Nilai sah ialah koma atau titik bertindih atau singlequote. enableduplicatedetectionMenunjukkan sama ada untuk mendayakan peraturan pengesanan duplikasi pada import data. Nilai sah ialah benar atau palsu. isfirstrowheaderDigunakan untuk menandakan bahawa baris pertama fail import mengandungi nama medan. Nilai sah ialah trueataufalse.isrecordownerateamMenunjukkan sama ada pemilik rekod pada import perlu pasukan. Nilai sah ialah trueataufalse.owneruserMenunjukkan pengguna ID hendaklah memiliki rekod. Nilai lalai adalah pengguna yang melog masuk pada masa ini. waitforimporttocompleteJika true, sistem menunggu untuk import selesai sebelum meneruskan. Jikafalse, ia akan membaris gilir kerja dan beralih.<zipimportdetails>nod
Nod ini mengandungi tatasusunan nod<zipimportdetail>yang menggambarkan fail termasuk dalam fail zip yang digunakan untuk mengimport ke Dynamics 365.<zipimportdetail>nod
Gunakan nod ini di bawah nod<zipimportdetails>untuk menyediakan maklumat tentang fail individu dalam fail .zip yang ditentukan dalam nod<configimportfile>.<filestoimport> ... ... <zipimportdetails> <zipimportdetail filename="subfile1.csv" filetype="csv" importtoentity="account" /> <zipimportdetail filename="subfile2.csv" filetype="csv" importtoentity="contact" /> </zipimportdetails> </filestoimport>Ini mempunyai atribut berikut:
Atribut Penerangan filenameNama fail yang mengandungi data import. filetypeIni boleh jadi csv atau xml. importtoentityBoleh jadi nama exe dalam fail zip, url atau fail .msi bagi menyediakan pautan untuk digunakan pada penghujung proses. <filesmapstoimport>nod
Node ini mengandungi tatasusunan nod<configmapimportfile>untuk diimport. Pesanan fail peta dalam nod menunjukkan pesanan di mana ia diimport. Untuk maklumat tentang peta data, lihat Cipta peta data untuk diimport.<configimportmapfile>nod
Gunakan nod di bawah nod<filesmapstoimport>untuk menyediakan maklumat tentang fail peta individu untuk diimport dalam Dataverse.<filesmapstoimport> <configimportmapfile filename="FileMap.xml" /> </filesmapstoimport><cmtdatafiles>nod
Nod ini mengandungi tatasusunan nod<cmtdatafile>yang mengandungi fail data konfigurasi versi disetempatkan untuk diimport.<cmtdatafile>nod
Gunakan nod di bawah nod<cmtdatafiles>untuk menentukan fail data konfigurasi disetempatkan bersama dengan ID setempat (diperlukan) dan fail peta maklumat pengguna (pilihan). Contohnya:<cmtdatafiles> <cmtdatafile filename="data_1033.zip" lcid="1033" usermapfilename="UserMap.xml" /> <cmtdatafile filename="data_1041.zip" lcid="1041" usermapfilename="" /> </cmtdatafiles>Anda boleh menakrif logik tersuai anda dalam kaedah
OverrideConfigurationDataFileLanguage(diterangkan kemudian) untuk mengimport fail data konfigurasi disetempatkan berbanding yang lalai (ditentukan dalam crmmigdataimportfile) berasaskan pada nilai ID setempat (LCID) yang ditentukan menggunakan tetapan masa jalanan (diterangkan kemudian).Klik Simpan Semua.
Berikut mewakili kandungan fail
ImportConfig.xmlsampel.<?xml version="1.0" encoding="utf-16"?> <configdatastorage xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" installsampledata="true" waitforsampledatatoinstall="true" agentdesktopzipfile="" agentdesktopexename="" crmmigdataimportfile="data_1033.zip"> <solutions> <configsolutionfile solutionpackagefilename="SampleSolutionOne_1_0_managed.zip" overwriteunmanagedcustomizations="false" publishworkflowsandactivateplugins="true"/> <configsolutionfile solutionpackagefilename="SampleSolutionTwo_1_0_managed.zip" overwriteunmanagedcustomizations="false" publishworkflowsandactivateplugins="true"/> <configsolutionfile solutionpackagefilename="SampleSolutionThree_1_0_managed.zip" /> </solutions> <filestoimport> <configimportfile filename="SampleOption.csv" filetype="CSV" associatedmap="SampleOption" importtoentity="sample_option" datadelimiter="" fielddelimiter="comma" enableduplicatedetection="true" isfirstrowheader="true" isrecordownerateam="false" owneruser="" waitforimporttocomplete="false"/> <configimportfile filename="File.zip" filetype="ZIP" associatedmap="FileMapName" importtoentity="FileEntity" datadelimiter="" fielddelimiter="comma" enableduplicatedetection="true" isfirstrowheader="true" isrecordownerateam="false" owneruser="" waitforimporttocomplete="true"/> <zipimportdetails> <zipimportdetail filename="subfile1.csv" filetype="csv" importtoentity="account" /> <zipimportdetail filename="subfile2.csv" filetype="csv" importtoentity="contact" /> </zipimportdetails> </filestoimport> <filesmapstoimport> <configimportmapfile filename="SampleOption.xml" /> </filesmapstoimport> <cmtdatafiles> <cmtdatafile filename="data_1033.zip" lcid="1033" usermapfilename="UserMap.xml" /> <cmtdatafile filename="data_1041.zip" lcid="1041" usermapfilename="" /> </cmtdatafiles> </configdatastorage>
Langkah 5: Takrif kod tersuai untuk pakej anda
Dalam anak tetingkap Peneroka Penyelesaian, klik dua kali fail PackageTemplate.cs pada akar untuk mengeditnya.
Dalam fail PackageTemplate.cs, anda boleh:
Masukkan kod tersuai untuk dilaksanakan apabila pakej diawalkan dalam definisi kaedah ganti bagi
InitializeCustomExtension.Kaedah ini boleh digunakan untuk membenarkan pengguna menggunakan parameter masa jalanan apabila menjalankan pakej. Sebagai pembangun, anda boleh menambah sokongan untuk mana-mana parameter masa jalanan pada pakej anda dengan menggunakan sifat RuntimeSettings selagi anda mempunyai kod untuk memprosesnya berasaskan pada input pengguna.
Contohnya, kod sampel berikut mendayakan parameter masa jalanan dipanggil
SkipChecksuntuk pakej yang mempunyai dua kemungkinan nilai: benar atau palsu. Kod sampel memeriksa jika pengguna menentukan sebarang parameter masa jalanan apabila Package Deployer (sama ada menggunakan baris perintah atau PowerShell), dan kemudian memproses maklumat sewajarnya. Jika tiada parameter masa jalanan ditentukan oleh pengguna apabila menjalankan pakej, nilai sifat RuntimeSettings akan menjadi nol.public override void InitializeCustomExtension() { // Do nothing. // Validate the state of the runtime settings object. if (RuntimeSettings != null) { PackageLog.Log(string.Format("Runtime Settings populated. Count = {0}", RuntimeSettings.Count)); foreach (var setting in RuntimeSettings) { PackageLog.Log(string.Format("Key={0} | Value={1}", setting.Key, setting.Value.ToString())); } // Check to see if skip checks is present. if ( RuntimeSettings.ContainsKey("SkipChecks") ) { bool bSkipChecks = false; if (bool.TryParse((string)RuntimeSettings["SkipChecks"], out bSkipChecks)) OverrideDataImportSafetyChecks = bSkipChecks; } } else PackageLog.Log("Runtime Settings not populated"); }Ini membenarkan pentadbir menggunakan baris perintah atau cmdlet Import-CrmPackage bagi menentukan sama ada melangkau semakan keselamatan apabila menjalankan alat Package Deployer untuk mengimport pakej. Maklumat lanjut: Laksanakan pakej menggunakan Package Deployer dan Windows PowerShell
Masukkan kod tersuai untuk melaksanakan sebelum penyelesaian diimport dalam definisi kaedah ganti
PreSolutionImportbagi menentukan sama ada mengekalkan atau menulis ganti penyesuaian semasa mengemas kini penyelesaian yang ditentukan dalam tika Dataverse sasaran dan sama ada untuk memasang masuk diaktifkan dan aliran kerja.Gunakan definisi kaedah ganti
RunSolutionUpgradeMigrationStepuntuk melakukan transformasi atau naik taraf data antara dua versi penyelesaian. Kaedah ini hanya dipanggil jika penyelesaian yang anda import telah wujud dalam tika Dataverse sasaran.Fungsi ini menjangkakan parameter berikut:
Parameter Penerangan solutionNameNama penyelesaian oldVersionNombor versi penyelesaian lama newVersionNombor versi penyelesaian baharu oldSolutionIdGUID penyelesaian lama. newSolutionIdGUID penyelesaian baharu. Masukkan kod tersuai untuk dilaksanakan sebelum import penyelesaian selesai dalam definisi kaedah ganti bagi
BeforeImportStage. Data sampel dan beberapa fail rata untuk penyelesaian yang ditentukan dalam failImportConfig.xmldiimport sebelum import penyelesaian selesai.Mengatasi bahasa pilihan pada masa ini untuk import data konfigurasi menggunakan definisi kaedah ganti
OverrideConfigurationDataFileLanguage. Jika ID setempat yang ditentukan (LCID) untuk bahasa yang ditentukan tidak ditemui dalam senarai bahasa tersedia dalam pakej, fail data lalai diimport.Anda menentukan bahasa tersedia untuk data konfigurasi dalam nod
<cmtdatafiles>dalam failImportConfig.xml. Fail import data konfigurasi lalai ditentukan dalam atributcrmmigdataimportfiledalam failImportConfig.xml.Melangkaui semakan data (OverrideDataImportSafetyChecks = benar) boleh dikuat kuasa di sini jika anda pasti bahawa tika Dataverse sasaran tidak mengandungi sebarang data.
Masukkan kod tersuai untuk dilaksanakan selepas import selesai dalam definisi ganti kaedah
AfterPrimaryImport. Baki fail rata yang tidak diimport lebih awal sebelum import penyelesaian dimulakan, diimport sekarang.Ubah nama lalai folder pakej anda daripada PkgFolder kepada nama pakej yang anda mahukan. Untuk berbuat demikian, namakan semula folder
PkgFolder>dalam anak tetingkap Peneroka Penyelesaian, dan kemudian edit nilai yang dikembalikan di bawah sifatGetImportPackageDataFolderName.public override string GetImportPackageDataFolderName { get { // WARNING this value directly correlates to the folder name in the Solution Explorer where the ImportConfig.xml and sub content is located. // Changing this name requires that you also change the correlating name in the Solution Explorer return "PkgFolder"; } }Ubah nama pakej dengan mengedit nilai yang dikembalikan di bawah sifat
GetNameOfImport.public override string GetNameOfImport(bool plural) { return "Package Short Name"; }Ini adalah nama pakej anda yang akan dipaparkan pada halaman pemilihan pakej dalam wizard Dynamics 365 Package Deployer.
Ubah description pakej dengan mengedit nilai yang dikembalikan di bawah sifat
GetImportPackageDescriptionText.public override string GetImportPackageDescriptionText { get { return "Package Description"; } }Ini adalah description pakej yang akan dipaparkan di sebelah nama pakej pada halaman pemilihan pakej dalam wizard Package Deployer.
Ubah nama panjang pakej dengan mengedit nilai yang dikembalikan di bawah sifat
GetLongNameOfImport.public override string GetLongNameOfImport { get { return "Package Long Name"; } }Nama panjang pakej dipaparkan pada halaman seterusnya selepas anda telah memilih pakej untuk dipasang.
Selain itu, fungsi dan pemboleh ubah berikut tersedia untuk pakej:
Nama Jenis Penerangan CreateProgressItem(String) Function Digunakan untuk mencipta item dalam antara muka pengguna (UI). RaiseUpdateEvent(String, ProgressPanelItemStatus) Function Digunakan untuk kemas kini kemajuan dicipta oleh panggilan ke CreateProgressItem(String).
ProgressPanelItemStatus ialah enum dengan nilai berikut:
Bekerja = 0
Selesai = 1
Gagal = 2
Amaran = 3
Tidak diketahui = 4RaiseFailEvent(String, Exception) Function Digunakan untuk menggagalkan status import semasa dengan message pengecualian. IsRoleAssoicatedWithTeam(Guid, Guid) Function Digunakan untuk menentukan jika peranan berkaitan dengan pasukan tertentu. IsWorkflowActive(Guid) Function Digunakan untuk menentukan jika aliran kerja yang ditentukan adalah aktif. PackageLog Penuding Kelas Ini adalah penuding untuk memulakan antara muka pengelogan bagi pakej. Antara muka ini digunakan oleh pakej untuk log message dan pengecualian ke fail log pakej. RootControlDispatcher Sifat Ini ialah antara muka penghantar yang digunakan untuk membenarkan kawalan anda memaparkan UI sendiri semasa pelaksanaan pakej. Gunakan antara muka ini untuk memperkemaskan mana-mana elemen atau perintah . Adalah penting untuk menyemak pemboleh ubah ini bagi nilai nol sebelum menggunakannya kerana ia mungkin atau mungkin tidak ditetapkan ke nilai. CrmSvc Sifat Ini adalah penuding kepada kelas CrmServiceClient yang membenarkan pakej untuk menangani Dynamics 365 daripada dalam pakej. Gunakan ini untuk melaksanakan kaedah SDK dan tindakan lain dalam kaedah diganti. DataImportBypass Sifat Gunakan ini untuk menentukan sama ada Package Deployer Dynamics 365 melangkau semua operasi import data seperti mengimport data sampel Dataverse, data fail rata dan data yang dieksport daripada alat pemindahan konfigurasi. Tentukan benar atau palsu. Lalai ialah false.OverrideDataImportSafetyChecks Sifat Gunakan ini untuk menentukan sama ada Package Deployer Dynamics 365 akan memintas sesetengah semakan keselamatan yang membantu dalam meningkatkan prestasi import. Tentukan trueataufalse. Lalai ialahfalse.
Anda hendaklah menetapkan ini ketruehanya jika tika Dataverse sasaran tidak mengandung sebarang data.Simpan projek anda dan kemudian binanya (Bina > Penyelesaian Bina) untuk mencipta pakej. Pakej anda adalah fail berikut di bawah folder <Project> \Bin\Debug
Folder <PackageName>: Nama folder adalah sama seperti yang anda ubah untuk nama folder pakej dalam Langkah 2.g bagi bahagian (Langkah 5: Takrif kod tersuai untuk pakej anda). Folder ini mengandungi semua penyelesaian, data konfigurasi, fail rata dan kandungan untuk pakej anda.
<PackageName>.dll: Pemasangan ini mengandungi kod tersuai untuk pakej anda. Secara lalai, nama himpunan sama seperti nama projek Visual Studio anda.
Langkah seterusnya ialah untuk melaksanakan pakej anda.
Laksanakan pakej
Selepas anda mencipta pakej, anda boleh melaksanakannya pada tika Dataverse dengan menggunakan sama ada alat Package Deployer atau Windows PowerShell.
Alat package deployer diagihkan sebagai sebahagian daripada pakej Microsoft.CrmSdk.XrmTooling.PackageDeployment NuGet. Untuk muat turun alat Package Deployer, lihat Muat turun alat daripada NuGet.
Untuk maklumat lanjut, lihat Laksanakan pakej menggunakan Package Deployer atau Windows PowerShell.
Amalan terbaik untuk mencipta dan melaksanakan pakej
Apabila mencipta pakej, pembangun mesti memastikan pemasangan pakej ditandatangani.
Apabila melaksanakan pakej, pentadbir Dataverse mestilah:
- Bertegas untuk pemasangan pakej ditandatangani supaya anda boleh menjejak semula pemasangan ke sumbernya.
- Uji pakej pada tika pra-pengeluaran (sebaik-baiknya imej cermin bagi tika pengeluaran) sebelum menjalankannya pada tika pengeluaran.
- Sandarkan tika pengeluaran sebelum melaksanakan pakej.
Lihat juga
Nota
Adakah anda boleh memberitahu kami tentang keutamaan bahasa dokumentasi anda? Jawab tinjauan pendek. (harap maklum bahawa tinjauan ini dalam bahasa Inggeris)
Tinjauan akan mengambil masa lebih kurang tujuh minit. Tiada data peribadi akan dikumpulkan (pernyataan privasi).
Maklum balas
Kirim dan lihat maklum balas untuk