Poznámka
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete sa skúsiť prihlásiť alebo zmeniť adresáre.
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete skúsiť zmeniť adresáre.
Generátor kódov pre rozhrania Dataverse API a tabuľky
pac modelbuilder build Pomocou príkazu môžete vygenerovať triedy .NET s včasnou väzbou pre tabuľky Dataverse, vlastné správy a triedu odvodenú z triedy OrganizationServiceContext. Ďalšie informácie o používaní tohto príkazu na generovanie tried s včasnou väzbou
Trieda odvodená z OrganizationServiceContext:
- Udržiava stav na klientovi na podporu funkcií, ako je napríklad správa zmien.
- Implementuje rozhranie System.Linq.IQueryable Interface a poskytovateľa dotazov .NET Language-Integrated Query (LINQ), aby ste mohli napísať dotazy LINQ pomocou údajov Dataverse.
Ďalšie informácie o možnostiach, ktoré tento nástroj na generovanie kódu umožňuje:
- Programovanie s neskorou väzbou a s včasnou väzbou pomocou organizačnej služby
- Použitie triedy OrganizationServiceContext
- Vytváranie dotazov pomocou jazyka LINQ
Poznámka
Príkaz pac modelbuilder build nahradí distribuovanú CrmSvcUtil.exe balíkom Microsoft.CrmSdk.CoreTools NuGet.
Príkazy
| Príkaz | Description |
|---|---|
| pac modelbuilder build | Vytvorí model kódu pre rozhrania API a tabuľky Dataverse |
pac modelbuilder build
Vytvorí model kódu pre rozhrania API a tabuľky Dataverse
Poznámka
Pred použitím build príkazu sa musíte najprv pripojiť k službe Dataverse pomocou pac príkazu auth create . Ak máte viacero pripojení, pomocou overeniapac vyberte prostredie Dataverse, pre ktoré chcete generovať kód.
Príklad
Nasledujúci príklad ukazuje, ako používať build príkaz s príkazovým riadkom.
pac modelbuilder build ^
--entitynamesfilter account;contact ^
--generatesdkmessages ^
--messagenamesfilter examp_* ^
--emitfieldsclasses ^
--emitVirtualAttributes ^
--namespace MyApps.Model ^
--outdirectory c:\src\MyApps\Model ^
--writesettingsTemplateFile ^
--serviceContextName OrgContext
A rovnaký príkaz pomocou prostredia PowerShell:
pac modelbuilder build `
--entitynamesfilter 'account;contact' `
--generatesdkmessages `
--messagenamesfilter 'examp_*' `
--emitfieldsclasses `
--emitVirtualAttributes `
--namespace 'MyApps.Model' `
--outdirectory 'c:\src\MyApps\Model' `
--writesettingsTemplateFile `
--serviceContextName 'OrgContext'
Dôležité
Pri používaní prostredia PowerShell je potrebné uzavrieť všetky parametre reťazca jednoduchými úvodzovkami.
Výsledkom tohto príkazu je, že do priečinka sa zapíšu c:\src\MyApps\Model nasledujúce súbory.
C:\src\MyApps\Model\
|---Subjekty\
| |--account.cs
| |--contact.cs
|---OptionSets\
| |--addresstypes.cs
|---Messages\
| |
|--- EntityOptionSetEnum.cs
|---builderSettings.json
|---OrgContext.cs
builderSettings.json obsahuje parametre, ktoré ste zadali pre príkaz. Môžete ju použiť na rýchle znovuzgenerovanie súborov pri zmene. Nasledujúci príklad znázorňuje použitie vygenerovaného buildersettings.json súboru z prvého príkazu pomocou súboru settingsTemplateFile:
pac modelbuilder build `
--outdirectory c:\src\MyApps\Model `
--settingsTemplateFile c:\src\MyApps\Model\builderSettings.json
Môžete sa tiež rozhodnúť vytvoriť builderSettings.json súbor a použiť ho namiesto odovzdania všetkých parametrov do príkazu. Nasleduje príklad, ktorý je ekvivalentom prvého príkladu vyššie:
{
"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
}
Ak odovzdáte parametre do príkazu počas používania parametra settingsTemplateFile , parametre odovzdané príkazu prepíšu builderSettings.json tie, ktoré sú nastavené v súbore.
Naraz nie je možné použiť parameter settingsTemplateFile ani parameter writesettingsTemplateFile .
Povinné parametre pre modelbuilder build
--outdirectory
-o
Zapíšte adresár pre súbory entity, správy a množiny možností.
Voliteľné parametre pre modelbuilder build
--emitentityetc
-etc
Ak je nastavená, do vygenerovaného kódu zahrnuje entitu ETC ( kód typu entity ).
Tento parameter nevyžaduje žiadnu hodnotu. Je to prepínač.
--emitfieldsclasses
-efc
Vygenerujte štruktúru konštátov, ktorá obsahuje všetky názvy polí podľa entity v čase generovania kódu.
Tento parameter nevyžaduje žiadnu hodnotu. Je to prepínač.
--emitvirtualattributes
-eva
Ak je nastavená, obsahuje podporné atribúty názvu pre vyhľadávania, ktoré umožňujú filtrovanie podľa hodnôt atribútov primárneho názvu vyhľadávacích atribútov.
Tento parameter nevyžaduje žiadnu hodnotu. Je to prepínač.
--entitynamesfilter
-enf
Filtruje zoznam entít pri čítaní údajov z platformy Dataverse. Odovzdané ako zoznam oddelený bodkočiarkou. pomocou entity<;><entitylogicalname>
--entitytypesfolder
-etf
Názov priečinka, ktorý obsahuje entity. Predvolený názov je Entity.
--environment
-env
Určuje cieľovú hodnotu Dataverse. Hodnotou môže byť identifikátor GUID alebo absolútna URL adresa protokolu https. Ak nie je určené, použije sa aktívna organizácia vybratá pre aktuálny profil overenia.
--generateGlobalOptionSets
-go
Emitovať všetky globálne množiny možností. Poznámka: Ak entita obsahuje odkaz na globálnu množinu možností, vynechá sa aj vtedy, ak tento prepínač nie je prítomný.
--generatesdkmessages
-a
Keď je nastavená, vygeneruje triedy správ súpravy SDK ako súčasť generovania kódu.
Tento parameter nevyžaduje žiadnu hodnotu. Je to prepínač.
--language
-l
Jazyk, ktorý sa má použiť pre vygenerovaný kód servera proxy. Táto hodnota môže byť buď CS, alebo VB. Predvoleným jazykom je CS.
--logLevel
-ll
Úroveň denníka. Predvolená hodnota je Vypnuté.
Použite jednu z týchto hodnôt:
OffCriticalErrorWarningInformationVerboseActivityTracingAll
--messagenamesfilter
-mnf
Filtruje zoznam správ, ktoré sa načítajú pri čítaní údajov z platformy Dataverse. Odovzdané do zoznamu oddeleného bodkočiarkami sú vždy zahrnuté požadované hlásenia (Vytvoriť, Aktualizovať, Odstrániť, Načítať, RetrieveMultiple, Associate a Zrušiť priradenie). Ak chcete povoliť všetky správy začínajúce reťazcom alebo končiace reťazcom, použite koncovú alebo úvodnú hviezdičku (*) s názvami správ. používanie názvu< správy formulára>;<názovsprávy>.
--messagestypesfolder
-mtf
Názov priečinka, ktorý obsahuje správy. Predvolený názov je Správy.
--namespace
-n
Priestor názvov pre vygenerovaný kód. Predvoleným priestorom názvov je globálny priestor názvov.
--optionsetstypesfolder
-otf
Názov priečinka, ktorý obsahuje množiny možností. Predvolený názov je "Množiny možností".
--serviceContextName
-sctx
Názov vygenerovaného kontextu služby. Ak je hodnota odovzdaná, použije sa v kontexte služby. Ak nie, nevygeneruje sa žiadny kontext služby.
--settingsTemplateFile
-stf
Obsahuje nastavenia, ktoré sa majú použiť na toto spustenie Zostavovača modelu Dataverse, prepíše všetky duplicitné parametre v príkazovom riadku. Nie je možné nastaviť, keď sa používa adresa --writesettingstemplate.
--suppressGeneratedCodeAttribute
-sgca
Keď je nastavená, potlačí sa tým hodnota všetkých generovaných objektov, ktoré boli označené motorom a verziou generovania kódu.
Tento parameter nevyžaduje žiadnu hodnotu. Je to prepínač.
--suppressINotifyPattern
Ak je táto možnosť povolená, nezapisuje wrapper funkcie INotify pre vlastnosti a triedy.
--writesettingsTemplateFile
-wstf
Pri nastavení zapíše súbor s nastaveniami do výstupného adresára s aktuálnymi prijatými nastaveniami alebo predvolenými nastaveniami.
Poznámky
Nižšie sú uvedené odporúčania na použitie pac modelbuilder build príkazu .
entitynamesfilter Nastavenie parametrov a messagenamesfilter
Upozornenie
Dôrazne odporúčame, aby ste parametre entity entitynamesfilter a messagenamesfilter obmedzovali na tie, ktoré budete používať vo svojom projekte. V opačnom prípade sa príkaz zostáv pokúsi generovať kód pre všetky tabuľky a správy z dataverse. Spracovanie bude trvať značné množstvo času.
Triedy správ, ktoré sa nachádzajú v priestore názvov Microsoft.Crm.Sdk.Messages a Microsoft.Xrm.Sdk.Messages , sa nevygenerujú pomocou tohto príkazu. Mali by ste zahrnúť iba správy, ktoré sa v parametri messagenamesfilter nenachádzajú, ako napríklad vlastné akcie.
Nastavenie suppressINotifyPattern , ak nevystavujete aplikáciu WPF
Obaly INotify , ktoré potlačí tento príkaz, sa používajú na scenáre priradenia údajov s aplikáciami WPF. Ak nevytvárate aplikáciu WPF s vygenerovaným kódom, nie je ich potrebné. Ak ich chcete potlačiť, použite parameter suppressINotifyPattern .
Zahrnutie serviceContextName pri generovaní tried správ
Ak vytvárate triedy správ, na generovanie zostavy by ste mali vždy zahrnúť parameter OrganizationServiceContext, a to aj v prípade, že ho nepoužívate. Vygenerované triedy správ vyžadujú vlastnosť nastavenú v tomto súbore. Ďalšie informácie o chybe, ktorá sa vyskytne, ak ju nenastavíte.
Pozrite tiež:
Microsoft Power Platform CLI Command Groups
Prehľad rozhrania Microsoft Power Platform CLI