Pakettide loomine Package Deployeri tööriistale

Package Deployer võimaldab administraatoritel pakette Microsoft Dataverse'i eksemplaril juurutada. Package Deployer paketis võib sisalduda mõni või kõik allnimetatutest:

Märkus.

On olemas ka teine paketitüüp mida nimetatakse lisandmoodulipaketiks. Sellist tüüpi pakett on lisandmoodulist sõltuvate assemblerite jaoks ja sel pole seost pakettidega Package Deployer .

eeltingimused

  • Veenduge, et kõik lahendused ja failid, mida soovite paketti kaasata, oleksid selleks valmis.
  • Visual Studio 2019 või uuem või Visual Studio kood.

Protsessi ülevaade

Paketi loomiseks Package Deployer toimige järgmiselt.

  • Looge Visual Studio või MSBuild projekt
  • Projektile lahenduste ja muude failide lisamine
  • Esitatud HTML-failide värskendamine (valikuline)
  • Määrake paketi konfiguratsiooniväärtused
  • Määratlege paketi kohandatud kood
  • Paketi koostamine ja juurutamine

Neid samme kirjeldatakse üksikasjalikult käesolevas artiklis.

Projekti paketi loomine

Esimene etapp on luua paketi jaoks Visual Studio MSBuild-projekt. Selleks peab teil olema arendusarvutisse installitud üks kahest saadaolevast tööriistalaiendist. Kui kasutate Visual Studio Code, installige Microsoft Power Platform CLI. Muul juhul, kasutades Visual Studio 2019, installige Power Platform tools Visual Studio jaoks. Tööriistade Power Platform laiendus on praegu saadaval ainult 2019. aastaks Visual Studio . Kuid loodud projekti saab luua Visual Studio 2019. aasta või hilisema versiooni abil.

Valige allolevalt vahekaardilt, et teada saada, kuidas luua projekti soovitud tööriistalaiendiga. Mõlemad tööriistad väljundid projekti sarnases vormingus.

Käivitage algne pakett paketi algse käsuga. Lisateave: paketi pakkimine

pac package init help
pac package init --outputDirectory DeploymentPackage

Tulemuseks saadud CLI väljund sisaldab allpool kuvatavaid kaustu ja faile. Siin on näitena kasutatud kausta nime "DeploymentPackage".

C:.
└───DeploymentPackage
    │   DeploymentPackage.csproj
    │   PackageImportExtension.cs
    │
    └───PkgAssets
            ImportConfig.xml
            manifest.ppkg.json

Loodud projektis leidke kaustast PkgAssets konfiguratsioonifail ImportConfig.xml ja fail PackageImportExtension.cs. Muudate neid faile selles artiklis allpool kirjeldatud viisil.

Paketi failide lisamine

Pärast pakettlahenduse projekti loomist saate sellele projektile lisada lahendusi ja muid faile.

CLI kasutamisel saate lisada väliseid pakette, lahendusi ja viiteid oma pakett projektile, kasutades ühte alamkommandruutidest . Sisetage pac package help et näha käskude loendit. Lisame oma paketti lahenduse.

> pac package add-solution help

Commands:
Usage: pac package add-solution --path [--import-order] [--skip-validation] [--publish-workflows-activate-plugins] [--overwrite-unmanaged-customizations] [--import-mode] [--missing-dependency-behavior] [--dependency-overrides]

> cd .\DeploymentPackage\
> pac package add-solution --path ..\TestSolution_1_0_0_1_managed.zip

The item was added successfully.

Paketi konfigureerimine

  1. Määratlege paketi konfiguratsioon, lisades oma paketi teabe faili ImportConfig.xml, mis on saadaval projektis. Avage redigeerimiseks fail. Järgmine loend sisaldab teavet konfiguratsioonifaili iga parameetri ja sõlme kohta.

    installsampledata
    True või false. Kui on true, installib näidisandmed Dataverse'i eksemplari. Need on samad näidisandmed, mida saate installida Dataverse, valides Sätted>Andmehaldus.

    waitforsampledatatoinstall
    Tõene või väär. Kui on tõene ja kui ka installsampledata on seatud väärtusele Tõene, ootab näidisandmete installimist enne paketi juurutamist.

    Märkus.

    Kui seate suvandi waitforsampledatatoinstall väärtuseks tõene, veenduge, et seate ka suvandi installsampledata väärtuseks tõene.

    agentdesktopzipfile
    ZIP-faili faili nimi lahtipakkimiseks. Kui määrate siin ZIP-faili nime, lisab see paketi juurutamise käigus kuva, mis palub teil valida asukoha, kuhu soovite faili sisu lahti pakkida.

    Seda kasutatakse tavaliselt Dynamics 365 Unified Service Desk pakettide loomiseks. Lisateavet Unified Service Deski kohta vt teemast Rakenduse Unified Service Desk for Dynamics 3.0 haldusjuhend.

    agentdesktopexename
    ZIP-failis oleva .exe- või .msi-faili nimi või URL, mis avatakse juurutusprotsessi lõpus.

    Seda atribuuti kasutatakse tavaliselt Unified Service Deski pakettide loomiseks.

    crmmigdataimportfile
    Konfiguratsiooni migreerimise tööriista abil eksporditud konfiguratsiooniandmete vaikefaili (.zip) nimi.

    • Samuti saate importida konfiguratsiooniandmete faili lokaliseeritud versiooni, mis põhineb Package Deployeri käitamisel uute käitusaja sätete abil määratud lokaadi ID-l (LCID). Kasutage sõlme <cmtdatafile> (selgitatakse allpool), et määrata konfiguratsiooniandmete faili lokaliseeritud versioonid paketis ja seejärel kasutage meetodit OverrideConfigurationDataFileLanguage (selgitatakse allpool), et määrata konfiguratsiooniandmete faili importimise loogika käitusaja sätete abil määratud lokaadi ID alusel. Te ei saa importida korraga rohkem kui ühte konfiguratsiooniandmefaili, kasutades paketti.

    • Kui Dataverse teie konfiguratsiooniandmefail sisaldab kasutajateavet ning nii lähte- kui ka sihteksemplarid asuvad samas Active Directory domeenis, imporditakse kasutajateave (asutusesisene) sihteksemplari Dataverse Dataverse . Kasutaja teabe importimiseks Dataverse'i (asutusesisene) eksemplari mõnes muus domeenis peate kaasama oma projekti konfiguratsiooni migreerimise tööriista abil loodud kasutaja kaardi faili (.xml) ja määrama selle koos konfiguratsiooniandmete failiga, kasutades allpool selgitatud sõlme <cmtdatafile> atribuuti usermapfilename. Kasutajateavet ei saa eksemplaridesse importida Dataverse .
      <solutions> sõlm
      Sisaldab sõlmede <configsolutionfile> massiivi, mis kirjeldavad imporditavaid lahendusi. Selle sõlme all olevate lahenduste järjestus näitab, millises järjekorras imporditakse lahendusi Dataverse'i sihteksemplaris.

      <configsolutionfile> sõlm
      Kasutage seda sõlme <solutions> juurde kuuluvat sõlme, et määrata iga imporditava lahenduse jaoks eraldi lahendused ja järgmine teave.

    • solutionpackagefilename: määrake lahenduse .zip faili nimi. Nõutav.

    • overwriteunmanagedcustomizations: saate määrata, kas mõni haldamata kohandus kirjutatakse üle, kui impordite lahenduse, mis on juba Dynamics 365 sihteksemplaris olemas. See atribuut on valikuline ja kui te seda atribuuti ei määra, säilitatakse olemasolevas lahenduses mittehallatavad kohandused vaikimisi Dynamics 365-i sihteksemplaris.

    • publishworkflowsandactivateplugins: saate määrata, kas avaldada töövood ja aktiveerida lisandmoodulid Dynamics 365 sihteksemplaris pärast lahenduse importimist. See atribuut on valikuline ja kui te seda atribuuti ei määra, avaldatakse töövood vaikimisi ja lisandmoodulid aktiveeritakse pärast lahenduse importimist Dynamics 365-i sihteksemplari.

      Paketti saate lisada mitu lahenduse faili nime, lisades sama palju sõlmi <configsolutionfile>. Näiteks kui soovite importida kolme lahenduse faili, lisage need järgmiselt:

    
    <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> sõlm
    Sisaldab sõlmede <configimportfile> ja <zipimportdetails> massiivi, mida kasutatakse imporditavate failide ja zip-failide kirjeldamiseks.

    <configimportfile> sõlm
    Kasutage seda sõlme <configimportfile> juurde kuuluvat sõlme, et kirjeldada Dataverse'isse imporditavat faili. Paketti saate lisada mitu faili, lisades sama palju sõlmi <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>  
    
    

    Allpool on toetatud atribuutide loend:

    Atribuut Kirjeldus
    filename Impordiandmeid sisaldava faili nimi. Kui fail on .zip fail, peab sõlm <zipimportdetails> esinema koos sõlmega <zipimportdetail> iga .zip failis oleva faili jaoks.
    filetype See väärtus võib olla CSV, XML või ZIP.
    associatedmap Selle failiga kasutatava Dataverse'i impordi andmekaardi nimi. Kui see on tühi, proovib selle faili jaoks kasutada süsteemi määratud impordi andmekaardi nime.
    importtoentity Võib olla ZIP-failis oleva .exe-faili, URL-i või .msi-faili nimi, et pakkuda protsessi lõpus käivitatavat linki.
    datadelimiter Impordifailis kasutatava andmeeraldaja nimi. Kehtivad väärtused on ühe- või jutumärgid.
    fielddelimiter Impordifailis kasutatava failieraldaja nimi. Kehtivad väärtused on koma või koolon või üks tsitaat.
    enableduplicatedetection Näitab, kas lubada duplikaadituvastuse reeglid andmete importimisel. Kehtivad väärtused on tõene või väär.
    isfirstrowheader Kasutatakse selle tähistamiseks, et impordifaili esimene rida sisaldab väljanimesid. Kehtivad väärtused on true või false.
    isrecordownerateam Näitab, kas imporditava kirje omanik peaks olema meeskond. Kehtivad väärtused on true või false.
    owneruser Kuvab kasutaja ID, mis peaks kirjeid omama. Vaikeväärtus on praegu sisse logitud kasutaja.
    waitforimporttocomplete Kui on true, ootab süsteem impordi lõpuleviimist enne jätkamist. Kui on false, siis see järjestab tööd ja liigub edasi.

    <zipimportdetails> sõlm
    See sõlm sisaldab sõlmede <zipimportdetail> massiivi, mis kirjeldab Dynamics 365 importimiseks kasutatavasse ZIP-faili kaasatud faile.

    <zipimportdetail> sõlm
    Kasutage seda sõlme <zipimportdetails> juurde kuuluvat sõlme, et anda teavet üksiku ZIP-failis oleva faili kohta, mis on määratud sõlmes <configimportfile>.

    <filestoimport>  
    ...  
    ...  
    <zipimportdetails>  
    <zipimportdetail filename="subfile1.csv" filetype="csv" importtoentity="account" />  
    <zipimportdetail filename="subfile2.csv" filetype="csv" importtoentity="contact" />  
    </zipimportdetails>  
    </filestoimport>  
    
    

    Allpool on toetatud atribuutide loend:

    Atribuut Kirjeldus
    filename Impordiandmeid sisaldava faili nimi.
    filetype See võib olla csv või xml.
    importtoentity Võib olla ZIP-failis oleva .exe-faili, URL-i või .msi-faili nimi, et pakkuda protsessi lõpus käivitatavat linki.

    <filesmapstoimport> sõlm
    See sõlm sisaldab imporditavate sõlmede <configmapimportfile> massiivi. Kaardifailide järjekord selles sõlmes näitab nende importimise järjekorda. Lisateavet andmekaartide kohta leiate teemast andmekaartide loomine importimiseks.

    <configimportmapfile> sõlm
    Kasutage seda sõlme <filesmapstoimport> juurde kuuluvat sõlme, et anda teavet Dataverse'isse imporditava üksiku kaardifaili kohta.

    <filesmapstoimport>  
    <configimportmapfile filename="FileMap.xml" />  
    </filesmapstoimport>  
    

    <cmtdatafiles> sõlm
    See sõlm sisaldab sõlmede <cmtdatafile> massiivi, mis sisaldab imporditava konfiguratsiooniandmefaili lokaliseeritud versiooni.

    <cmtdatafile> sõlm
    Kasutage seda sõlme <cmtdatafiles> juurde kuuluvat sõlme, et määrata lokaliseeritud konfiguratsiooniandmete failid koos lokaadi ID-ga (nõutav) ja kasutajateabe kaardifailiga (valikuline). Näiteks:

    <cmtdatafiles>  
    <cmtdatafile filename="data_1033.zip" lcid="1033" usermapfilename="UserMap.xml" />  
    <cmtdatafile filename="data_1041.zip" lcid="1041" usermapfilename="" />  
    </cmtdatafiles>  
    

    Kohandatud loogika saate määratleda meetodis OverrideConfigurationDataFileLanguage (selgitatud allpool), et vaikefaili (määratletud failis crmmigdataimportfile) asemel importida lokaliseeritud konfiguratsiooniandmete fail, mis põhineb käitusaja sätete (selgitatakse allpool) abil määratud lokaadi ID (LCID) väärtusel.

  2. Valige Salvesta kõik.

    Järgmine xml tähistab näidisfaili ImportConfig.xml sisu.

    <?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>  
    
    

Kohandatud koodi lisamine

Saate lisada kohandatud koodi, mis käivitub enne paketti importimist, selle ajal ja pärast importimist. Selleks järgige järgmisi juhiseid.

  1. Redigeerige PackageTemplate.cs (või PackageImportExtension.cs) faili projekti juurkaustas.

  2. C# failis saate teha järgmist.

    1. Sisestage kohandatud kood, mis käivitatakse paketi lähtestamisel meetodi InitializeCustomExtension alistamisdefinitsioonis.

      Selle meetodi abil saavad kasutajad kasutada käitusaja parameetreid paketi käitamisel. Arendajana saate paketile lisada mis tahes käitusaja parameetri toe, kasutades RuntimeSettings atribuuti seni, kuni teil on kood selle töötlemiseks kasutaja sisestuse põhjal.

      Näiteks lubab järgmine näidiskood käitusaja parameetri nimega SkipChecks paketi jaoks, millel on kaks võimalikku väärtust: tõene või väär. Näidiskood kontrollib, kas kasutaja on Package Deployeri käitamise (käsurea või PowerShelli abil) ajal määranud käitusaja parameetrid ja seejärel töötleb teavet vastavalt. Kui kasutaja ei määra paketi käitamise ajal käitusaja parameetrit, siis RuntimeSettings atribuut on tühiväärtusega.

      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");  
      }  
      

      See võimaldab administraatoril kasutada käsurida või Import-CrmPackage i cmdlet-käsku, et määrata, kas Package Deployer tööriista käitades jätta ohutuskontrollid vahele paketi importimiseks. Lisateavet vt Pakettide juurutamine Package Deployeriga ja Windows PowerShelliga

    2. Sisestage kohandatud kood, mis käivitatakse enne lahenduste importimist meetodi PreSolutionImport alistamisdefinitsioonis, et määrata, kas säilitada või kirjutada kohandused üle määratud lahenduse värskendamisel Dataverse'i sihteksemplaris ning kas aktiveerida lisandmoodulid ja töövood automaatselt.

    3. Alistamismeetodi definitsiooni RunSolutionUpgradeMigrationStep kasutamine andmete teisendamiseks või lahenduse kahe versiooni vaheliseks täiendamiseks Seda meetodit nimetatakse ainult siis, kui imporditav lahendus on sihteksemplaris Dataverse juba olemas.

      See funktsioon eeldab järgmisi parameetreid.

      Parameeter Kirjeldus
      solutionName Lahenduse nimi
      oldVersion Vana lahenduse versiooninumber
      newVersion Uue lahenduse versiooninumber
      oldSolutionId Vana lahenduse GUID.
      newSolutionId Uue lahenduse GUID.
    4. Sisestage kohandatud kood, mis käivitatakse enne lahenduse importimise lõpuleviimist meetodi BeforeImportStage alistamisdefinitsioonis. Näidisandmed ja mõned lamefailid failis ImportConfig.xml määratud lahenduste jaoks imporditakse enne lahenduse importimise lõpulejõudmist.

    5. Alistage konfiguratsiooniandmete importimiseks praegu valitud keel, kasutades alistamismeetodi definitsiooni OverrideConfigurationDataFileLanguage. Kui määratud keele määratud lokaadi ID-d (LCID) ei leita paketi saadaolevate keelte loendist, imporditakse vaikeandmefail.

      Konfigureerimisandmete jaoks saadaolevad keeled saate määrata faili ImportConfig.xml sõlmes <cmtdatafiles>. Konfiguratsiooniandmete impordi vaikefail on määratud faili ImportConfig.xml atribuudis crmmigdataimportfile.

      Andmekontrollide vahelejätmine (OverrideDataImportSafetyChecks = tõene) võib siin olla tõhus, kui olete kindel, et sihteksemplar Dataverse ei sisalda andmeid.

    6. Sisestage kohandatud kood, mis käivitatakse pärast lahenduse importimise lõpuleviimist meetodi AfterPrimaryImport>alistamisdefinitsioonis. Ülejäänud lamefailid, mida ei imporditud varem, enne lahenduse importimise algust, imporditakse nüüd.

    7. Muutke paketi kausta vaikenimi soovitud paketi nimeks. Selleks nimetage PkgFolder (või PkgAssets) kaustas Lahenduse uurijas paanil ja seejärel redigeerige atribuudi GetImportPackageDataFolderName tagastusväärtust.

      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";  
      }  
      }  
      
    8. Muutke paketi nime, redigeerides atribuudi GetNameOfImport tagastusväärtust.

      public override string GetNameOfImport(bool plural)  
      {  
      return "Package Short Name";  
      }  
      

      See tagastatud väärtus on teie paketi nimi, mis kuvatakse Dynamics 365-i Package Deployer viisardi paketivaliku lehel.

    9. Muutke paketi kirjeldust, redigeerides atribuudi GetImportPackageDescriptionText tagastusväärtust.

      
      public override string GetImportPackageDescriptionText  
      {  
      get { return "Package Description"; }  
      }  
      
      

      See tagastatud väärtus on paketi kirjeldus, mis kuvatakse viisardi paketivaliku lehel Package Deployer paketi nime kõrval.

    10. Muutke paketi pikka nime, redigeerides atribuudi GetLongNameOfImport tagastusväärtust.

      
      public override string GetLongNameOfImport  
      {  
      get { return "Package Long Name"; }  
      }  
      
      

      Paketi pikk nimi kuvatakse järgmisel lehel pärast seda, kui olete valinud installitava paketi.

  3. Lisaks on paketile saadaval järgmised funktsioonid ja muutujad:

    Nimi Tüüp Kirjeldus
    CreateProgressItem(String) Function Kasutatakse kasutajaliideses (UI) uue poolelioleva üksuse loomiseks.
    RaiseUpdateEvent(String, ProgressPanelItemStatus) Function Kasutatakse CreateProgressItem(String) kutse abil loodud edenemise värskendamiseks.

    ProgressPanelItemStatus on loetelu, millel on järgmised väärtused:

    Töötamine = 0
    Täielik = 1
    Nurjunud = 2
    Hoiatus = 3
    Tundmatu = 4
    RaiseFailEvent(String, Exception) Function Kasutatakse praeguse oleku importimise nurjumiseks erandi teatega.
    IsRoleAssoicatedWithTeam(Guid, Guid) Function Kasutatakse selleks, et määratleda, kas roll on seostatud määratud meeskonnaga.
    IsWorkflowActive(Guid) Function Kasutatakse selleks, et määratleda, kas määratud töövoog on aktiivne.
    PackageLog Klassi viit See on viide paketi lähtestatud logimisliidesele. Seda liidest kasutab pakett sõnumite ja erandite logimiseks paketi logifaili jaoks.
    RootControlDispatcher Atribuut See on dispetšeri liides, mida kasutatakse selleks, et teie juhtelement saaks paketi juurutamise ajal oma kasutajaliidese renderdada. Selle liidese abil saate mähkida kõik kasutajaliidese elemendid või käsud. Enne selle muutuja kasutamist on oluline kontrollida, kas sellel muutujal pole nullväärtusi, kuna see ei pruugi olla väärtusele seatud.
    CrmSvc Atribuut See on viit CrmServiceClient klassile, mis võimaldab paketil adresseerida lahendust Dynamics 365 paketi kaudu. Selle abil saate käitada tühistatud meetodites SDK-meetodeid ja muid toiminguid.
    DataImportBypass Atribuut Selle abil saate määrata, kas Dynamics 365 Package Deployer jätab vahele kõik andmete imporditoimingud Dataverse näidisandmete, faili andmete ja Konfiguratsiooni ülemineku tööriista eksporditud andmete importimise. Määrake: tõene või väär. Vaikesäte on false.
    OverrideDataImportSafetyChecks Atribuut Määrake, kas Dynamics 365 Package Deployer möödub mõnest oma ohutuskontrollist, mis aitab parandada impordi jõudlust. Määrake: true või false. Vaikesäte on false.

    Peaksite selle atribuudi määrama true ainult siis, kui sihteksemplar Dataverse ei sisalda andmeid.
  4. Salvestage oma projekt. Järgmine etapp on paketi ehitamine.

Ehita ja juuruta

Järgmistes jaotistes kirjeldatakse, kuidas paketti koostada ja juurutada.

Koosta

Paketi koostamist kirjeldatakse allpool sõltuvalt sellest, millist tööriista kasutate.

CLI-ga loodud paketi loomiseks võite laadida .csproj faili Visual Studio, kuid selle asemel kasutame käsku dotnet ja MSBuild. Allolevas näites eeldatakse, et töökataloog sisaldab faili *.csproj.

> dotnet publish

DeploymentPackage -> C:\Users\peter\Downloads\DeploymentPackage\bin\Debug\DeploymentPackage.1.0.0.pdpkg.zip

Soovi korral saate vaadata sisseehitatud paketi üksikasju.

> pac package show --package .\bin\Debug\DeploymentPackage.1.0.0.pdpkg.zip

Teie pakett on loodud failis <Projekt>\Bin\Debug kaustas.

  • <Kausta> PackageName (Paketinimi):kausta nimi on sama, mida muutsite paketikausta nimeks käesoleva jaotise juhises 2.g Kohandatud koodi lisamine. See kaust sisaldab teie paketi kõiki lahendusi, konfiguratsiooniandmeid, lamefaile ja sisu.

Märkus.

Võib näha .NET-i kausta (nt net472), mis sisaldab pdpublish kausta. Teie DLL muud projektifailid asuvad selles pdpublish kaustas.

  • <PackageName>.dll: komplekt sisaldab teie paketi kohandatud koodi. Vaikimisi on assembleri nimi sama mis teie projekti nimi.

Juuruta

Pärast paketi loomist saate selle juurutada Dataverse eksemplaris Package Deployer tööriista või Windows PowerShell või CLI käsu abil.

Head tavad

Allpool on toodud mõned parima tava näpunäited, mida pakettidega töötamisel Package Deployer järgida.

Paketi loomine

Pakettide loomisel peavad arendajad:

  • Veenduge, et paketi assembleritele oleks alla kirjutatud.

Pakettide juurutamine

Kui juurutate pakette, Dataverse administraatorid peavad:

  • nõudma allkirjastatud paketi komplekti et teil oleks võimalik tuvastada komplekti allikat.
  • Testige pakendit tootmiseelsel eksemplaril, eelistatavalt tootmiseksemplar peegelpildil, enne kui käivitate selle tootmiseksemplar-ga.
  • tegema tootmiseksemplarist enne paketi juurutamist varukoopia.

Vt ka

Lahendusepakkija tööriist