Märkus.
Juurdepääs sellele lehele nõuab autoriseerimist. Võite proovida sisse logida või kausta vahetada.
Juurdepääs sellele lehele nõuab autoriseerimist. Võite proovida kausta vahetada.
Dataverse API-de ja tabelite koodigeneraator
Käsu pac modelbuilder build abil saate luua varases vormingus .NET-klassid Dataverse'i tabelite, kohandatud sõnumite ja Klassi OrganizationServiceContext Class põhjal tuletatud klassi jaoks. Lisateave selle käsu kasutamise kohta varases köites klasside loomiseks
Klass, mis on tuletatud:OrganizationServiceContext
- Säilitab kliendi oleku, et toetada funktsioone (nt muudatuste haldus).
- Juurutab System.Linq.IQueryable Interface'i ja .NET Language-Integrated-i päringu (LINQ) pakkuja, et saaksite LINQ-päringuid dataverse'i andmete abil kirjutada.
Lisateavet selle koodi genereerimise tööriista võimaluste kohta leiate järgmistest võimalustest.
- Late-bound and early-bound programming using the Organization service
- Organisatsiooniteenusecontexti kasutamine
- LINQ-ga järgupäringud
Märkus.
Käsk pac modelbuilder build asendab CrmSvcUtil.exe jagatud paketiga Microsoft.CrmSdk.CoreTools NuGet.
Käsud
| Käsk | Kirjeldus |
|---|---|
| pac modelbuilder build | Loob dataverse API-de ja tabelite jaoks koodimudeli |
pac modelbuilder build
Loob dataverse API-de ja tabelite jaoks koodimudeli
Märkus.
Käsu kasutamiseks build peate esmalt looma autentimisepac loomise käsu abil ühenduse Dataverse'iga. Kui teil on mitu ühendust, valige autentimisvalikupac abil Dataverse'i keskkond, mille jaoks soovite koodi luua.
Näide
Järgmises näites build kirjeldatakse käsu kasutamist käsuviibaga.
pac modelbuilder build ^
--entitynamesfilter account;contact ^
--generatesdkmessages ^
--messagenamesfilter examp_* ^
--emitfieldsclasses ^
--emitVirtualAttributes ^
--namespace MyApps.Model ^
--outdirectory c:\src\MyApps\Model ^
--writesettingsTemplateFile ^
--serviceContextName OrgContext
Ja sama käsk PowerShelli abil:
pac modelbuilder build `
--entitynamesfilter 'account;contact' `
--generatesdkmessages `
--messagenamesfilter 'examp_*' `
--emitfieldsclasses `
--emitVirtualAttributes `
--namespace 'MyApps.Model' `
--outdirectory 'c:\src\MyApps\Model' `
--writesettingsTemplateFile `
--serviceContextName 'OrgContext'
Oluline
PowerShelli kasutamisel tuleb stringiparameetrid ümbritseda ülakomadega.
Selle käsu tulem on see, et kausta kirjutatakse c:\src\MyApps\Model järgmised failid.
C:\src\MyApps\Model\
|---Üksused\
| |--account.cs
| |--contact.cs
|---Suvandikomplektid\
| |--addresstypes.cs
|---Sõnumid\
| |--examp_myapi.cs
|---EntityOptionSetEnum.cs
|---builderSettings.json
|---OrgContext.cs
builderSettings.json sisaldab käsu jaoks määratud parameetreid. Saate seda kasutada failide kiireks genereerimiseks asjade muutumisel. Järgmises näites on kujutatud esimese käsu põhjal loodud buildersettings.json faili kasutamine sättega SettingsTemplateFile:
pac modelbuilder build `
--outdirectory c:\src\MyApps\Model `
--settingsTemplateFile c:\src\MyApps\Model\builderSettings.json
Samuti saate valida, kas luua builderSettings.json fail ja kasutada seda kõigi parameetrite käsule edastamise asemel. Järgmine näide on samaväärne esimese ülaltoodud näitega:
{
"suppressINotifyPattern": false,
"suppressGeneratedCodeAttribute": false,
"language": "CS",
"namespace": "MyApps.Model",
"serviceContextName": "OrgContext",
"generateSdkMessages": true,
"generateGlobalOptionSets": false,
"emitFieldsClasses": true,
"entityTypesFolder": "Entities",
"messagesTypesFolder": "Messages",
"optionSetsTypesFolder": "OptionSets",
"entityNamesFilter": [
"account",
"contact"
],
"messageNamesFilter": [
"examp_*"
],
"emitEntityETC": false,
"emitVirtualAttributes": true
}
Kui edastate parameetreid settingsTemplateFile kasutades käsule parameetreid, alistavad käsule edastatud parameetrid failis builderSettings.json määratud parameetrid.
Parameetrit settingsTemplateFile ja parameetrit writesettingsTemplateFile ei saa korraga kasutada.
Nõutavad parameetrid: modelbuilder build
--outdirectory
-o
Olemi-, sõnumi- ja suvanditekomplektifailide kataloogi kirjutamine.
Valikulised parameetrid: modelbuilder build
--emitentityetc
-etc
Kui see on määratud, kaasatakse genereeritud koodi olem ETC ( olemi tüübi kood).
See parameeter ei vaja väärtust. See on lüliti.
--emitfieldsclasses
-efc
Saate luua konstantide struktuuri, mis sisaldab kõiki väljanimesid olemi järgi koodi loomise ajal.
See parameeter ei vaja väärtust. See on lüliti.
--emitvirtualattributes
-eva
Kui see on seatud, kaasatakse otsingute tuginimeatribuudid, mis võimaldavad filtreerimist otsinguatribuutide esmase nime atribuutide väärtuste alusel.
See parameeter ei vaja väärtust. See on lüliti.
--entitynamesfilter
-enf
Filtreerib olemite loendi, mis tuuakse andmete lugemisel andmevaatest. Edastatud semikooloniga eraldatud loendina. Kasutades vormi <entitylogicalname>;<entitylogicalname>
--entitytypesfolder
-etf
Olemeid sisaldav kaustanimi. Vaikenimi on Olemid.
--environment
-env
Määrab sihtandmekanali. Väärtus võib olla GUID või absoluutne HTTPS-i URL. Kui seda pole määratud, kasutatakse praeguse autentimisprofiili jaoks valitud aktiivset organisatsiooni.
--generateGlobalOptionSets
-go
Eraldage kõik globaalsed suvandikomplektid. Märkus. Kui olem sisaldab viidet globaalsele suvandikomplektile, väljastatakse see ka siis, kui seda lülitit pole olemas.
--generatesdkmessages
-a
Kui see on määratud, kiirgab Sdk-sõnumi klassid koodi loomise osana.
See parameeter ei vaja väärtust. See on lüliti.
--language
-l
Genereeritud puhverserveri koodi jaoks kasutatav keel. See väärtus võib olla kas CS või VB. Vaikekeel on CS.
--logLevel
-ll
Logitase. Vaikeväärtus on Väljas.
Kasutage ühte järgmistest väärtustest.
OffCriticalErrorWarningInformationVerboseActivityTracingAll
--messagenamesfilter
-mnf
Filtreerib nende sõnumite loendi, mis tuuakse dataverse'ist andmete lugemisel. Edastatud semikooloniga eraldatud loendina, kaasatakse alati nõutavad sõnumid (loomine, värskendamine, kustutamine, toomine, toomine, toomine, seostamine ja lahutamine). Kasutage lõpu- või eestärni (*) koos sõnumite nimedega, et lubada kõigi stringiga algavate või lõppevate sõnumite korral. Vormi <sõnuminimi> kasutamine;<messagename>.
--messagestypesfolder
-mtf
Kausta nimi, mis sisaldab sõnumeid. Vaikenimi on Sõnumid.
--namespace
-n
Loodud koodi nimeruum. Vaikenimeruum on globaalne nimeruum.
--optionsetstypesfolder
-otf
Suvandikomplekte sisaldav kaustanimi. Vaikenimi on OptionSets.
--serviceContextName
-sctx
Loodud teenusekonteksti nimi. Kui väärtus edastatakse, kasutatakse seda teenusekonteksti jaoks. Vastasel korral teenusekonteksti ei genereerita.
--settingsTemplateFile
-stf
Sisaldab andmemudelikoosturi selle käituse jaoks kasutatavaid sätteid, alistab käsureal kõik dubleeritud parameetrid. --writesettingstemplate'i kasutamisel ei saa seda määrata.
--suppressGeneratedCodeAttribute
-sgca
Kui see on seatud, tõkestab see kõigi genereeritud objektide sildistamise koodigenereerimise mootori ja versiooniga
See parameeter ei vaja väärtust. See on lüliti.
--suppressINotifyPattern
Kui see on lubatud, ei kirjutata atribuutide ja klasside INotify mähkijaid.
--writesettingsTemplateFile
-wstf
Kui see on määratud, kirjutab sätete faili väljundkausta praeguste edastatud sätete või vaikesätetega.
Märkused
Käsu kasutamiseks pac modelbuilder build on järgmised soovitused.
Parameetrite entitynamesfilter ja messagenamesfilter seadmine
Hoiatus
Soovitame tungivalt kasutada parameetreid entitynamesfilter ja messagenamesfilter , et piirata loodud faile nendega, mida te oma projektis kasutate. Vastasel juhul proovib järgu käsk luua koodi kõigi Dataverse'i tabelite ja sõnumite jaoks. Selle töötlemiseks kulub palju aega.
Microsoft.Crm.Sdk.Messages ja Microsoft.Xrm.Sdk.Messages nimeruumis leiduvate sõnumite klassid ei genereerita selle käsu abil. Peaksite kaasama ainult parameetris mitteleidnud messagenamesfilter teated (nt kohandatud toimingud).
Määrake suppressINotifyPattern , kui te ei koosta WPF-rakendust
Selle INotify käsuga tõkestatud mähkijaid kasutatakse WPF-rakendustega seotud andmete sidumiseks. Kui te ei koosta genereeritud koodiga WPF-rakendust, ei vaja te neid. Kasutage parameetrit suppressINotifyPattern nende tõkestamiseks.
Kaasa serviceContextName sõnumiklasside loomisel
Kui loote sõnumiklasse, peaksite alati lisama parameetri serviceContextName genereerimiseks OrganizationServiceContext, isegi kui te seda ei kasuta. Loodud sõnumiklassid nõuavad selles failis atribuudikomplekti. Lugege lisateavet tõrke kohta, mis ilmneb, kui te seda ei määra.
Vaata ka
Microsoft Power Platform CLI käsurühmad
Microsoft Power Platform CLI ülevaade