コード生成ツール拡張機能を使用したコードの生成 (Dynamics CRM 2015)

 

公開日: 2016年11月

対象: Dynamics CRM 2015

Developer Extensions for Microsoft Dynamics CRM 2015 および Microsoft Dynamics CRM Online 2015 更新プログラム は、すべての Microsoft Dynamics 365 エンティティのデータ コンテキスト クラスとデータ転送オブジェクト (DTO) の生成に使用する CrmSvcUtil.exe コード生成ツールの拡張ライブラリを提供します。 このメカニズムは、エンティティ フレームワークで SqlMetal が実装するのと同じ設計パターンに従います。 データ コンテキスト クラスはすべてのデータ操作を行い、Microsoft Dynamics 365 のすべてのエンティティの IQueryable インターフェイスを提供します。 LINQ クエリを IQueryable エンティティ セット プロパティに対して実行することで、データを取得できます。AddObjectDeleteObjectUpdateObjectSaveChanges メソッドを使用してデータを変更できます。

CrmSvcUtil.exe コード生成ツールの Microsoft.Xrm.Client.CodeGeneration 拡張機能には次の機能があります。

  • 静的に型指定されたエンティティ クラスを生成します。

  • 多対多関係クラスを生成します。

  • Microsoft Dynamics 365 スキーマ名に基づいて、クラス名とプロパティ名を生成します。

  • エンティティを管理するための WCF Data Services (Astoria/OData) 互換データ コンテキスト クラスを生成します。

このトピックの内容

エンティティ クラス

データ コンテキスト クラス

エンティティ クラス

コード生成ツールで生成されたエンティティ クラスには次の機能があります。

  • WCF Data Services (Astoria/OData) 注釈属性のサポート。

  • 次の機能を提供する厳密に型指定されたエンティティ属性アクセサー。

    • Microsoft Dynamics 365 データ型から標準 CLR データ型へのマッピング。

    • 次の機能を含む多対一関係用のアクセサー。

      • 関連エンティティの遅延読み込み。

      • 外部キー ID 用のアクセサー。

    • 関連エンティティ セットの遅延読み込みを提供する多対多関係アクセサー。

データ コンテキスト クラス

CrmSvcUtil.exe と Microsoft.Xrm.Client.CodeGeneration 拡張機能で生成されたデータ コンテキスト クラスは、WCF Data Services の IUpdatable インターフェイスおよび IExpandProvider インターフェイスCrmOrganizationServiceContext クラスの継承の結果として使用します。 詳細については、「IUpdatable インターフェイス」および「IExpandProvider インターフェイス」の .NET ドキュメントを参照してください。 これらのインターフェイスには次の機能があります。

  • エンティティを管理するための読み取り、作成、更新、および削除の操作を提供します。

  • 関係 (1:N、N:1、および N:N) を管理するための set-link、add-link、remove-link の操作を提供します。

  • Web サービスと REST サービスを公開するための DataServiceHostFactory をサポートします。

  • 静的または動的に型指定されたクエリ用の LINQ クエリ プロバイダーを提供します。

  • 動的クエリには、コード生成は不要です。

  • キャッシュをバックグラウンドで処理します。

単一コンテキスト クラスは、静的に型指定されたエンティティ セット アクセサーを提供するために生成されます。 また、クエリを使用してより充実したポータル機能を提供し、WCF Data Services のインターセプター機能を変更するために、いくつかのサブクラスが生成されます。

関連項目

AddObject
DeleteObject
UpdateObject
SaveChanges
Microsoft Dynamics CRM 2015 の Developer Extensions
Developer Extensions のコンテキスト オブジェクト モデル (Dynamics CRM 2015)
CrmSvcUtil.exe 拡張機能の使用方法とコマンド ライン パラメーター (Dynamics CRM 2015)
生成されたクラス ファイルの使用

© 2017 Microsoft. All rights reserved. 著作権