Entitätsklassen mit früher Bindung mit dem Codegenerierungstool erstellen (CrmSvcUtil.exe)

 

Veröffentlicht: Januar 2017

Gilt für: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

CrmSvcUtil.exe ist ein Befehlszeilencodegenerierungstool für die Verwendung mit Microsoft Dynamics 365 (online und lokal). Dieses Tool erstellt .NET Framework-Klassen mit früher Bindung, die das Entity Data Model darstellen, das von Microsoft Dynamics 365 verwendet wird. Dieses Tool ist im SDK-Paket im Ordner SDK\Bin gespeichert.Laden Sie das Microsoft Dynamics CRM SDK-Paket herunter.

In diesem Thema

Informationen zum Codegenerierungstool

Ausführen des Codegenerierungstools

Parameter

Verwendungsbeispiele

Verwenden der Konfigurationsdatei

Aktivieren der Ablaufverfolgung

Informationen zum Codegenerierungstool

Das CrmSvcUtil.exe-Tool erstellt eine Microsoft Visual C# or Microsoft Visual Basic .NET-Ausgabedatei, die stark typisierte Klassen für Entitäten in Ihrer Organisation enthält. Dies umfasst benutzerdefinierte Entitäten und Attribute. Diese Ausgabedatei enthält eine Klasse für jede Entität, und stellt frühe Bindung und IntelliSense-Unterstützung in Microsoft Visual Studio bereit, die Ihnen hilft, wenn Sie benutzerdefinierten Code schreiben. Die erstellten Klassen sind partielle Klassen, die mit benutzerdefinierter Geschäftslogik in den separaten Dateien erweitert werden können. Sie können auch Erweiterungen für dieses Tool erstellen. Weitere Informationen finden Sie unter Erstellen von Erweiterungen für das Codegenerierungstool.

Das Tool kann auch verwendet werden, um eine Klasse zu generieren, die von der OrganizationServiceContext-Klasse abgeleitet ist, die als in Entitätscontainer im Entity Data Model auftritt. Der Servicekontext bietet die Einrichtungen für die Nachverfolgung von Änderungen und das Verwalten von Identitäten, Parallelität und Beziehungen. Diese Klasse stellt auch eine SaveChanges-Methode zur Verfügung, die in Microsoft Dynamics 365 Datensätze schreibt, einfügt, aktualisiert und löscht. Weitere Informationen finden Sie unter Verwenden der OrganizationServiceContext-Klasse.

Das Codegenerierungstool nimmt einige Parameter, die die Inhalte der Datei bestimmen, die erstellt wird. Die Parameter in können über die Befehlszeile übergeben werden, wenn Sie das Tool ausführen, oder in einer mit .NET verbundenen Anwendungskonfigurationsdatei.

Die Klassen, die vom Codegenerierungstool erstellt werden, sind konzipiert, um in eine Klassenbibliothek eigebaut zu werden, auf die in Projekten verwiesen wird, die Microsoft Dynamics 365 verwenden. Nachdem Sie die Klassendatei mithilfe des Tools erstellt haben, sollten Sie die Datei dem Visual Studio-Projekt hinzufügen. Sie müssen auch einigen Assemblys Verweise hinzufügen, von denen die generierten Klassen abhängig sind.

Die folgenden Liste führt Aassemblys auf, auf die in Ihrem Projekt verwiesen werden muss, wenn Sie die generierte Codedatei verwenden.

  • Microsoft.Crm.Sdk.Proxy.dll

  • Microsoft.Xrm.Sdk.dll

Diese Assemblys finden Sie im SDK\Bin-Ordner des SDK.Laden Sie das Microsoft Dynamics CRM SDK-Paket herunter.

Ausführen des Codegenerierungstools

Führen Sie das CrmSvcUtil.exe-Tool im SDK\Bin-Ordner aus. Wenn Sie das Tool in einem anderen Ordnerspeicherort ausführen, stellen Sie sicher, dass eine Kopie der Microsoft.Xrm.Sdk.dll-Assemblys sich in dem gleichen Ordner befindet.

Im folgenden Beispiel wird das Format für die Ausführung von Tools in der Befehlszeile für eine lokale Installation von Microsoft Dynamics 365 gezeigt. Sie stellen die Parameterwerte für die Installation bereit.

CrmSvcUtil.exe /url:http://<serverName>/<organizationName>/XRMServices/2011/Organization.svc    /out:<outputFilename>.cs /username:<username> /password:<password> /domain:<domainName>    /namespace:<outputNamespace> /serviceContextName:<serviceContextName>

Im folgenden Beispiel wird das Format für die Ausführung von Tools in der Befehlszeile mit Microsoft Dynamics 365 (online) gezeigt. Sie stellen die geeigneten Parameterwerte für Ihr Konto und Ihren Server bereit.

CrmSvcUtil.exe /url:https://<organizationUrlName>.api.crm.dynamics.com/XRMServices/2011/Organization.svc    /out:<outputFilename>.cs /username:<username> /password:<password>     /namespace:<outputNamespace> /serviceContextName:<serviceContextName>

Für den Parameter username geben Sie den Benutzernamen ein, der verwendet wird, um zu sich Microsoft-Konto oder bei Microsoft Office 365 anzumelden. Die korrekte URL der Webanwendung finden Sie, indem Sie Einstellungen auswählen, zu Anpassungen navigieren, und dann Entwickleressourcen schließen. Die URL wird unter Organisationsservice angezeigt.

Verwenden Sie den folgenden Befehl, um die unterstützten Befehlszeilenparameter anzuzeigen.

CrmSvcUtil.exe /?

Wenn Sie das Tool mit Microsoft Dynamics 365 (online) mithilfe des Microsoft-Konto -dentitätsanbieters ausführen, müssen Sie die Parameter deviceid und devicepassword über die Befehlszeile angeben. Das Tool registriert Ihr Gerät automatisch. Sie können jedoch das Gerät manuell registrieren und Werte für diese erhalten, indem Sie zunächst das DeviceRegistration-Codebeispiel , wie hier beschrieben, kompilieren und ausführen.

Generieren Ihrer persönlichen Geräte-ID und des Kennworts

  1. Öffnen und erstellen Sie das DeviceRegistration-Projekt: SDK\Tools\DeviceRegistration\DeviceRegistration.csproj.

  2. Führen Sie die ausführbare Datei aus der Befehlszeile aus. Legen Sie zum Registrieren des Geräts den Parameter /operation zu Register fest.

C:\deviceregistration.exe /operation:Register
  1. Kopieren Sie die angezeigte Geräte-ID- und Kennwort, und verwenden Sie sie als Werte für deie Parameter deviceid und devicepassword, wenn Sie das CrmSvcUtil-Tool ausführen.

Parameter

Die folgende Tabelle enthält die Codegenerierungstoolparameter und gibt eine kurze Beschreibung ihrer Verwendung.

Parameter

Verknüpfung

Beschreibung

Erforderlich

deviceid

di

Geräte-ID, die verwendet wird, wenn Sie eine Verbindung mit dem Online-Server für die Authentifizierung herstellen. Nur erforderlich, wenn die Geräte-ID nicht auf der Festplatte im Ordner %USERPROFILE%\LiveDeviceID gespeichert wurde. Nur mit dem Microsoft-Konto-Identitätsanbieter verwendet.

False

devicepassword

dp

Geräte-Kennwort, das verwendet wird, wenn Sie eine Verbindung mit dem Online-Server für die Authentifizierung herstellen. Nur erforderlich, wenn das Geräte-Passwort nicht auf der Festplatte im Ordner %USERPROFILE%\LiveDeviceID gespeichert wurde. Nur mit dem Microsoft-Konto-Identitätsanbieter verwendet.

False

domain

d

Die Domäne, anhand derer authentifiziert wird, wenn Sie eine Verbindung zum Server herstellen.

False

url

Die URL für den Organisationsservice.

True

out

o

Der Dateinamen für den erstellten Code.

True

language

l

Die Sprache, in dem der Code zu generieren ist. Das kann entweder “CS” oder “VB” sein. Der Standardwert ist “CS”.

False

namespace

n

Der Namespace für den erstellten Code. Standard ist der globale Namespace.

False

username

u

Der Benutzername, der verwendet wird, wenn Sie eine Verbindung mit dem Server für die Authentifizierung herstellen.

False

Kennwort

p

Das Kennwort, das verwendet wird, wenn Sie eine Verbindung mit dem Server für die Authentifizierung herstellen.

False

servicecontextname

Der Name der Kontextklasse des generierten Organisationsservice. Wenn kein Wert angegeben ist, wird kein Servicekontext erstellt.

False

help

?

Verwendungsinformationen anzeigen.

False

nologo

Das Banner zur Laufzeit unterdrücken.

Falsch

generateActions

Generieren Sie Anforderungs- und Antwortklassen für Aktionen.

interactivelogin

il

Wenn es auf true festgelegt wird, wird ein Dialog zur Anmeldung zum Dynamics 365-Service angezeigt. Alle anderen Parameter, die mit der Verbindung zusammen hängen, die auf der Befehlszeile angegeben wurden, werden ignoriert.

Falsch

Verbindungszeichenfolge

connstr

Enthält Informationen, als einzelne Zeichenfolge bereitgestellt, zur Verbindung mit einer Dynamics 365-Organisation. Alle anderen Parameter, die mit der Verbindung zusammen hängen, die auf der Befehlszeile angegeben wurden, werden ignoriert. Weitere Informationen finden Sie unter Verwenden von Verbindungszeichenfolgen im XRM-Tooling zum Herstellen einer Verbindung zu Dynamics 365.

Falsch

Verwendungsbeispiele

Die folgenden Beispiele veranschaulichen, wie das Codegenerierungstool über die Befehlszeile für jeden Bereitstellungstyp verwendet wird. Beachten Sie, dass Benutzername und Kennwort optionale Parameter sind. Wenn Ihre Anmeldeinformationen für den Microsoft Dynamics 365-Zielserver in Windows-Credential Vault gespeichert werden, müssen Sie diese nicht verwendet werden, um das Codegenerierungstool auszuführen.

Anspruchsauthentifizierung – Active Directory

Das folgende Beispiel zeigt, wie das Codegenerierungstool durch Verwendung von Anspruchsauthentifizierung in Active Directory ausgeführt wird. Beachten Sie die Verwendung von HTTPS, da dieser Beispielserver Transport Layer Security (TLS) oder Secure Sockets Layer (SSL) verwendet.

CrmSvcUtil.exe /url:https://myport:555/MyOrg/XRMServices/2011/Organization.svc /out:GeneratedCode.cs
       /username:administrator /password:password

Microsoft Dynamics 365 (online)

Das folgende Beispiel zeigt, wie das Codegenerierungstool für Microsoft Dynamics 365 (online) ausgeführt wird. Das erste Beispie ist für den Microsoft-Konto-Identitätsanbieter und das zweite ist für den Office 365-Identitätsanbieter.

CrmSvcUtil.exe /url:https://myorg.api.crm.dynamics.com/XRMServices/2011/Organization.svc    /out:GeneratedCode.cs /username:"myname@live.com" /password:"myp@ssword!" 
CrmSvcUtil.exe /url:https://myorg.api.crm.dynamics.com/XRMServices/2011/Organization.svc    /out:GeneratedCode.cs /username:"myname@myorg.onmicrosoft.com" /password:"myp@ssword!" 

Anspruchsbasierte Authentifizierung - IFD

Das folgende Beispiel zeigt, wie das Codegenerierungstool durch Verwendung von Anspruchsauthentifizierung ausgeführt wird.

CrmSvcUtil.exe /url:https://myorg.crm.com:555/XRMServices/2011/Organization.svc     /out:GeneratedCode.cs /username:administrator /password:p@ssword! 

Verwenden der Konfigurationsdatei

Die CrmSvcUtil.exe.config-Konfigurationsdatei muss im gleichen Ordner wie das CrmSvcUtil.exe Tool sein. Die Konfigurationsdatei verwendet die Standardschlüssel-Wert-Paare im Abschnitt appSettings. Wenn Sie einen Wert über die Befehlszeile eingeben, wird dieser Wert anstelle des Werts in der Konfigurationsdatei verwendet. Alle Schlüssel-Wert-Paare, die in der Anwendungskonfigurationsdatei gefunden werden, die nicht einem der erwarteten Parameter entsprechen, werden ignoriert.

Schließen Sie die Parameter url und namespace nicht in die XML-Konfigurationsdatei ein. Diese müssen über die Befehlszeile eingegeben werden, wenn das CrmSvcUtil.exe-Tool ausgeführt wird.

Das folgende Beispiel zeigt, wie die Ausgabedatei und die Domänennamenparameter in der Anwendungskonfigurationsdatei mithilfe von Tastenkombinationen konfiguriert werden.

<appSettings>    <add key="o" value="CrmProxy.cs"/>    <add key="d" value="mydomain"/></appSettings>

Aktivieren der Ablaufverfolgung

Um die Ablaufverfolgung zu aktivieren, wenn Sie das Tool ausführen, fügen Sie die folgenden Zeilen der Konfigurationsdatei hinzu:

<system.diagnostics> 
   <trace autoflush="false" indentsize="4"> 
      <listeners> 
         <add name="configConsoleListener" type="System.Diagnostics.ConsoleTraceListener"> 
            <filter type="System.Diagnostics.EventTypeFilter" initializeData="Error" /> 
         </add> 
      </listeners> 
   </trace> 
</system.diagnostics>

Weitere Information zu den unterstützten Ablaufverfolgungsoptionen finden Sie unter Konfigurieren der Ablaufverfolgung für XRM-Tooling.

Siehe auch

Entwicklertools
Durchsuchen der Metadaten für die Organisation
Erstellen von Erweiterungen für das Codegenerierungstool
Verwenden der Entitätsklassen mit früher Bindung zum Erstellen, Löschen und Aktualisieren
Problembehandlungs-Tipps
Ausführen eines einfachen Programms mit Microsoft Dynamics 365-Webdiensten

Microsoft Dynamics 365

© 2017 Microsoft. Alle Rechte vorbehalten. Copyright