Dataverse は単なるデータベースではなく、開発者が データを操作できるようにする Web サービスでもあります。
ADO.NET Entity Framework に慣れている場合、データ指向アプリケーションのアーキテクトと開発者は、2 つの異なる目標を達成する必要性に苦労してきました。
- 解決するビジネス上の問題のエンティティ、リレーションシップ、ロジックをモデル化する必要があります。
- また、データの格納と取得に使用されるデータ サービスと連携する必要があります。
Entity Framework を使用すると、開発者は、このデータが格納されている基になるデータベース テーブルと列に関心を持たずに、顧客や顧客の住所などのドメイン固有のオブジェクトやプロパティの形式でデータを操作できます。
Power Apps と Dataverse では、 テーブル と 列 がユーザー インターフェイスで使用され、データが Dataverse データベースに格納される方法の一般的な概念を参照しますが、特定の用語 ( エンティティ や 属性など) は、データの操作に使用されるプロトコルまたはテクノロジに応じて、開発者が操作する基になるデータ モデルとインターフェイスを指すために使用されます。
開発者が操作するデータ構造はエンティティとして公開され、この用語は開発者が使用するものの名前に組み込まれています。 例えば次が挙げられます。
| 対象... | 使用... | 開発者は... |
|---|---|---|
| Dataverse テーブルを作成する | Web API |
EntityMetadata EntityType のインスタンスを /EntityDefinitions リソースに POST する |
| Dataverse テーブルを作成する | .NET SDK | EntityMetadata クラスのインスタンスを作成し、SDK for .NET を使用するときに CreateEntityRequest クラスを使用します。 |
| Dataverse テーブルに行またはレコードを作成する | Web API | 特定の EntityType として定義された POST データ。 EntityTypes の一覧については、Web API EntityType リファレンスをご覧ください。 |
| Dataverse テーブルに行またはレコードを作成する | .NET SDK | エンティティ クラスのインスタンスまたはエンティティ クラスを継承するクラス (Account、Contact など) を作成し、SDK for .NET を使用する場合は CreateRequest クラスを使用します。 開発者は、 エンティティ参照で Entity クラスを使用するために必要な情報を見つけることができます。 |
プロトコルまたはテクノロジに応じた用語の使用
開発者向けドキュメントで使用される用語は、開発者が使用するプロトコルまたはクラス ライブラリによって異なります。
Web API を使用する場合は、OData プロトコルで定義されている用語を使用します。 データ構造は、プロパティとナビゲーション プロパティを持つ EntityTypes として定義されます。
.NET SDK を使用する場合は、Entity クラスがあるため、Entity を使用します。 Entity クラスには、AttributeMetadata クラス内のデータと、そこから派生した他の多くのクラスで定義される属性のコレクションを含む Attributes プロパティがあります。
適切な用語を使用して、SDK と Web API テクノロジについて説明します。 開発者向けドキュメント では 、Power Apps ユーザー インターフェイスとは異なる用語が使用される場合があります。 次の表は、開発者向けドキュメントと Power Apps ドキュメントの残りの部分の用語の違いについて説明します。
| Power Apps UI | Dataverse SDK | Dataverse Web API |
|---|---|---|
| 表 | エンティティ | EntityType |
| コラム | 特性 | プロパティ |
| Row | 記録 | 記録 |
| Choices | OptionSet(オプションセット)/Picklist(選択リスト) | OptionSet |
| はい/いいえ | ブール値 | ブール値 |