クラウドストレージ(OneDrive)に画像をアップロード、参照する

tips
  • 2017.06.14
  • 技術情報

Visual Studio 2017とMicrosoft GraphMicrosoft Graph Client Library for .NET)を使用して、LEADTOOLSのRasterImageViewerで表示した画像をOneDrive(個人用)へアップロードします。その後アップロードした画像をダウンロードしてLEADTOOLSのRasterImageViewerで表示します。

はじめにアプリケーションの登録を行います。「ユニバーサル Windows 10 アプリで Microsoft Graph を使ってみる」の「アプリを登録する」を参考に、アプリ登録ポータルでアプリケーションを登録します。今回はアプリケーション名を「LeadtoolsTest」、アプリケーションはWindows Formsで作成するのでプラットフォームを「ネイティブ アプリケーション」としています。

application-registration-portal
native-app

Visual StudioでWindows Forms アプリケーションを作成します。RasterImageViewerとButtonを追加します。

winforms-design

Nuget Package マネージャーでMicrosoft Graph クライアント ライブラリ(Microsoft.Graph)とMicrosoft 認証ライブラリ (MSAL、Microsoft.Identity.Client)を追加します。

nugetpackagemgr

UWP (ライブラリ) 用 Microsoft Graph スターター プロジェクトAuthenticationHelper.csにあるAuthenticationHelperクラスのコードをForm1.csにコピーします。clientIdにはアプリ登録ポータルで登録したアプリケーションのアプリケーション IDを設定します。ScopesにはFiles.ReadWriteのみを設定します。

authentication-helper-added

Microsoft Graphを使うための認証処理は以上です。続いて画像を扱う処理を実装していきます。まず、LEADTOOLSのライセンスを設定して、RasterImageViewerに画像を表示します。

setlicense-load

続いてRasterImageViewerで表示した画像をOneDriveへアップロードする処理と、アップロードした画像をダウンロードしてRasterImageViewerで表示する処理を実装します。Microsoft Graph クライアント ライブラリ(Microsoft.Graph)を使用してMicrosoft Graph APIのアップロードダウンロードを実装しています。

putandget

ビルドして実行してみます。Loadボタンで画像をRasterImageViewerに読み込んだ後にUploadボタンでOneDriveに画像をアップロードできます。同様にDownloadボタンでOneDriveにアップロードした画像をダウンロードしてRasterImageViewerに読み込むこともできます。

upload

以上です。今回作成したサンプルはこちらです。

トピックス一覧に戻る