サンプル: Dataverse Web API を使用したファイル操作

この .NET 6.0 サンプルでは、Dataverse Web API を使用してファイル列の操作を実行する方法を説明します。

このサンプルでは、WebAPIService クラス ライブラリ (C#) の共通ヘルパー コードを使用します。

前提条件

  • Microsoft Visual Studio 2022
  • システム管理者権限またはシステムカスタマイザー権限を持つ Dataverse へのアクセス。

サンプルを実行する方法

  1. PowerApps-サンプル リポジトリをクローンまたはダウンロードします。

  2. Visual Studio 2022 を使用して PowerApps-Samples\dataverse\webapi\C#-NETx\FileOperations\FileOperations.sln ファイルを開きます。

  3. appsettings.json ファイルを編集して、以下のプロパティ値を設定します:

    Property 方法
    Url ご使用の環境の Url。 プレースホルダー https://yourorg.api.crm.dynamics.com の値を環境の値に置き換えます。 詳細については、開発者向けリソースを表示する を参照してください。
    UserPrincipalName プレースホルダー you@yourorg.onmicrosoft.com の値を環境へのアクセスに使用する UPN の値に置き換えます。
    Password プレースホルダー yourPassword の値を使用するパスワードに置き換えます。
  4. appsettings.json ファイルを保存します

  5. ソリューション エクスプローラでどのプロジェクトを実行するかを選択します。 プロジェクトを右クリックし、スタートアップ プロジェクトとして設定を選択ます。

  6. 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 ファイルを参照してください。

各プロジェクトのコードは、それぞれの 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 を使用したファイル操作

注意

ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)

この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。