画像列は、Microsoft Dataverse テーブルの列に画像ファイルを格納します。 フォームに画像列を追加して、画像をアップロード、表示、変更、および削除します。 利用可能な場合、フォームに画像のサムネイルが表示されます。
注意
基本フォームまたはマルチステップ フォーム ステップで 挿入 モードを使用して、画像ファイルをアップロードすることはできません。
画像 URL
画像 URL は、画像が保存されている場所の完全な URL を示します。 これは、開発とトラブルシューティングに使用できます。
画像の URL は次の形式を取ります:
{0}/Image/download.aspx?entity={1}&attribute={2}&id={3}
どこで:
{0} は Web サイトの URL です
{1} はエンティティの論理名です
{2} は列の論理名です
{3} は画像 ID です
たとえば、Web サイトが https://contososite.powerappsportals.com
にある場合、コードは次のようになります:
https://contososite.powerappsportals.com/Image/download.aspx?entity=contact&attribute=entityimage&id=cb059a4a-b1a6-ec11-9840-00224829604e
Liquid
Liquid コード を使用して Web サイトを設計し、Dataverse テーブルからレコードを取得できます。 fetchXML とエンティティビューを使用して、次のように画像列の値を読み込みます:
{% for item in tables.results.entities %}
{{ item.columnname.Type }}
{{ item.columnname.Size }}
{{ item.columnname.Url }}
{{ item.columnname.Value }}
{% endfor %}
どこで:
タイプは画像の MIME タイプです
サイズはバイト単位の画像サイズです
値は Base64 文字列としての画像値です
URL は画像の URL です
例: 既定の連絡先画像を取得する
{% fetchxml contacts %}
<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
<entity name="contact">
<attribute name="fullname"/>
<attribute name="entityimage"/>
</entity>
</fetch>
{% endfetchxml %}
{% for item in contacts.results.entities %}
{
"Full Name":"{{ item.fullname }}"
"Entity Image Type":"{{ item.entityimage.Type}}",
"Entity Image Size":"{{ item.entityimage.Size}}",
"Entity Image Url":"{{ item.entityimage.Url}}",
"Entity Image Value":"{{ item.entityimage.Value}}"
}
{% endfor %}
Web API
ポータルの Web API を使用して、Dataverse テーブル全体の画像列にの画像を作成、読み取り、更新、削除ができます。
画像データを取得する
サムネイル画像データをダウンロードするには、次の API 呼び出しを使用します:
GET /_api/<entity-type>(id)/<image-attribute-name>/$value
Web サービスのエンドポイントから転送された画像データは、単一のサービス コールで最大 16 MB データに制限されています。
例: サムネイルのダウンロード
次の例では、サムネイルが存在する場合は GET 呼び出しを使用してダウンロードします。
HTTP 要求:
GET [website url]/_api/accounts(62d53214-9dfa-eb11-94ee-0022482230a8)/entityimage/$value
Headers:
Content-Type: application/octet-stream
HTTP 応答:
204 No Content
Body:
Byte[ ]
この例では、サムネイルが存在しないため画像は返されません。 サムネイルが存在する場合、応答は値を含むバイト配列を返します。
画像データをアップロードする
画像をアップロードするには、画像列の値に画像ファイルの内容を含むバイト配列を設定します:
PUT or PATCH /_api<entity-type>(id)/<image-attribute-name>
例: 画像のアップロード
HTTP 要求:
PUT [website url]/_api/accounts(62d53214-9dfa-eb11-94ee-0022482230a8)/entityimage
Headers:
Content-Type: application/octet-stream
Body :
Byte [ ]
プロフィール画像のアップロード
認証されたWeb サイト ユーザーは、Web サイトのプロフィール欄に画像をアップロードできます。 画像は、Dataverse の対応する取引先担当者レコードのエンティティ画像列に保存されます。 最大 10 MB までの画像をアップロードすることができます。
サイト設定の作成
まず、認証されたユーザーがプロフィール写真をアップロードできるようにサイト設定を作成する必要があります:
ポータル管理アプリ を開きます
Web サイト 配下で、サイト設定 を選択します。
Profile/ShowImageという設定を作成し、値を true に設定します。 (設定が存在する場合、値を true にします。)