この .NET 6.0 サンプルでは、Dataverse Web API を使用し、activitymimeattachment と annotation エンティティ タイプを持つファイル データを使って、演算を実行する方法について説明します。
このサンプルでは、WebAPIService クラス ライブラリ (C#) サンプル プロジェクトの共通ヘルパー コードを使用します。
前提条件
- Microsoft Visual Studio 2022
- システム管理者権限またはシステムカスタマイザー権限を持つ Dataverse へのアクセス。
サンプルを実行する方法
PowerApps-サンプル リポジトリをクローンまたはダウンロードします。
Visual Studio 2022 を使用して
PowerApps-Samples\dataverse\webapi\C#-NETx\AttachmentAndAnnotationOperations\AttachmentAndAnnotationOperations.slnファイルを開きます。このソリューションには、サンプルを含む 2 つのプロジェクトが含まれています。
- ActivityMimeAttachmentOperations: 添付ファイルの使用方法を示します。
- AnnotationOperations: 注釈の使用方法を示します。
注: WebAPIService プロジェクトが含まれているため、他の各プロジェクトは、サービスによって提供される共通のヘルパー コードに依存できます。 サンプルでは、
WebAPIService/Messagesフォルダーでいくつかのクラスを使用します。ソリューション エクスプローラーで、実行するプロジェクトを右クリックして、スタートアップ プロジェクトとして設定 を選択します。
いずれかのプロジェクトで、
appsettings.jsonファイルを編集して、以下のプロパティ値を設定します:Property 方法 Urlご使用の環境の Url。 プレースホルダー https://yourorg.api.crm.dynamics.comの値を環境の値に置き換えます。 詳細については、開発者向けリソースを表示する を参照してください。UserPrincipalNameプレースホルダー you@yourorg.onmicrosoft.comの値を環境へのアクセスに使用する UPN の値に置き換えます。Passwordプレースホルダー yourPasswordの値を使用するパスワードに置き換えます。appsettings.jsonファイルを保存します。注: どちらのプロジェクトも同じ
appsettings.jsonファイルを参照するため、どちらかのプロジェクトを実行するには、これを 1 回実行するだけで済みます。F5 を押してサンプルを実行します。
実際の動作
このサンプルは、2 つのプロジェクトによるソリューションです。 各プロジェクトの詳細については、それぞれの README ファイルを参照してください。
ユーティリティ クラス
両方のプロジェクトでは、共通の操作を行うために、共有の Utility クラスが使用されます。 このクラスには、次の 3 つの静的メソッドが含まれています。
GetMimeType
FileInfo パラメーターに基づいて、この関数は Microsoft.AspNetCore.StaticFiles.FileExtensionContentTypeProvider を使って、ファイルの mimetype を取得しようとします。 判別できない場合は、application/octet-stream が返されます
GetMaxUploadFileSize
WebAPIServiceServiceservice パラメーターを使用して、この関数は maxuploadfilesize テーブルからの整数 organization 値を返します。
SetMaxUploadFileSize
WebAPIServiceServiceservice パラメーターを使用して、この関数は maxuploadfilesize テーブルからの整数 organization 値を、整数 maxUploadFileSizeInBytes パラメーターの値に設定します。
参照
添付ファイルとメモ レコードでファイル データを使用する
サンプル: .NET 用 Dataverse SDK を使用した添付ファイルとメモのファイル操作