サンプル: Dataverse Web API を使用したファイル操作
この .NET 6.0 サンプルでは、Dataverse Web API を使用してファイル列の操作を実行する方法を説明します。
このサンプルでは、WebAPIService クラス ライブラリ (C#) の共通ヘルパー コードを使用します。
前提条件
- Microsoft Visual Studio 2022
- システム管理者権限またはシステムカスタマイザー権限を持つ Dataverse へのアクセス。
サンプルを実行する方法
PowerApps-サンプル リポジトリをクローンまたはダウンロードします。
Visual Studio 2022 を使用して
PowerApps-Samples\dataverse\webapi\C#-NETx\FileOperations\FileOperations.sln
ファイルを開きます。appsettings.json
ファイルを編集して、以下のプロパティ値を設定します:Property 方法 Url
ご使用の環境の Url。 プレースホルダー https://yourorg.api.crm.dynamics.com
の値を環境の値に置き換えます。 詳細については、開発者向けリソースを表示する を参照してください。UserPrincipalName
プレースホルダー you@yourorg.onmicrosoft.com
の値を環境へのアクセスに使用する UPN の値に置き換えます。Password
プレースホルダー yourPassword
の値を使用するパスワードに置き換えます。appsettings.json
ファイルを保存しますソリューション エクスプローラでどのプロジェクトを実行するかを選択します。 プロジェクトを右クリックし、スタートアップ プロジェクトとして設定を選択ます。
F5 を押してサンプルを実行します。
サンプル出力
出力のサンプル次のようになります:
Creating file column named 'sample_FileColumn' on the account table ...
Created file column named 'sample_FileColumn' in the account table.
Created account record with accountid:5fb4f993-7c55-ed11-bba3-000d3a9933c9
Uploading file Files\25mb.pdf ...
Uploaded file Files\25mb.pdf
Downloading file from accounts(5fb4f993-7c55-ed11-bba3-000d3a9933c9)/sample_filecolumn ...
Downloaded the file to E:\GitHub\PowerApps-Samples\dataverse\webapi\C#-NETx\FileOperations\FileOperationsWithActions\bin\Debug\net6.0//downloaded-25mb.pdf.
Deleted the file using FileId.
Deleted the account record.
Deleting the file column named 'sample_filecolumn' on the account table ...
Deleted the file column named 'sample_filecolumn' in the account table.
実際の動作
このサンプルは、3 つのプロジェクトによるソリューションです。 各プロジェクトは、同じ操作を異なる方法で実行します。 各プロジェクトの詳細については、それぞれの README ファイルを参照してください。
- Web API のファイル操作とアクション サンプル README
- Web API のファイル操作とチャンクのサンプル README
- Web API のファイル操作とストリームのサンプル README
各プロジェクトのコードは、それぞれの Program.cs
ファイルにあります。
- Web API のファイル操作とアクション サンプル Program.cs
- Web API のファイル操作とチャンクのサンプル Program.cs
- Web API のファイル操作とストリームのサンプル Program.cs
各プロジェクトでは、共通の操作を行うために、共有の Utility
クラスが使用されます。 このクラスは Utility.cs ファイルにあります。
各プロジェクトは、高いレベルで、これらのオペレーションを実行します:
ファイル列の作成
Utility.CreateFileColumn
関数は、取引先企業テーブルに sample_FileColumn
という名前のファイル列を 10 MB の MaxSizeInKb
値で作成します。
ファイル列の更新
Utility.UpdateFileColumnMaxSizeInKB
関数は、sample_FileColumn
ファイル列の MaxSizeInKb
値を 100 MB に更新します。
ヒント: ファイルの列サイズが小さすぎるために何らかのエラー シナリオを作成する場合は、この行をコメント アウトしてください。
ファイル列の MaxSizeInKb 値を取得します
Utility.GetFileColumnMaxSizeInKb
は、sample_FileColumn
ファイル列の MaxSizeInKb
値を取得し、fileColumnMaxSizeInKb
という変数に格納する。
取引先企業レコードを作成する
ファイル列にファイルをアップロードする前に、レコードが存在している必要があります。
ファイルのアップロード
ファイルをアップロードする関数は、fileColumnMaxSizeInKb
というパラメータを受け取り、その値を使ってファイルのサイズをテストします。 ファイルがファイル列の構成された制限よりも大きい場合、エラーがスローされます。
ファイルのダウンロード
ファイルのアップロードに成功した場合、ファイルをダウンロードする機能は、現在のディレクトリにファイルを保存します。 ファイルを開いて、正しくアップロードおよびダウンロードされたことを確認できます。
ファイルの削除
ファイルのアップロードに成功した場合は、ファイルを削除する。
クリーンアップ
サンプルを実行する前の状態にするために、次の処理を行います:
- 取引先企業レコードの削除
- ファイル列の削除
関連情報
ファイル列のデータを使用する
サンプル: Dataverse SDK for .NET を使用したファイル操作
ファイル列のデータを使用する
サンプル: Dataverse Web API を使用したファイル操作