このトピックでは、Alibaba Cloud Image Search SDK for .NET の使用方法について説明します。

準備

  • Alibaba Cloud SDK をインストールして使用する前に、Alibaba Cloud アカウントが作成され、AccessKey ペアを取得済みであることを確認してください。 詳細については、「AccessKey ペアの作成」をご参照ください。
  • Alibaba Cloud SDK for .NET のコアライブラリは、以下の方法でインストールできます。
    • (推奨) 依存関係マネージャーを使用する場合。

      NuGet パッケージマネージャーを使用して、Alibaba Cloud SDK for .NETのコアライブラリをインストールできます。 ソリューションエクスプローラーでプロジェクトを右クリックし、[NuGet パッケージの管理] を選択します。 表示されたページで [参照] タブをクリックし、aliyun-net-sdk-core と入力して [インストール] をクリックします。

    • .NET コマンドラインインターフェイス (CLI) を使用する場合。
       dotnet add package aliyun-net-sdk-core
    • Alibaba Cloud SDK for .NET のコアライブラリをダウンロードしてインストールします。

      git clone コマンドを実行するか、または他の方法でaliyun-net-sdk-core をダウンロードしてソリューションを追加します。

  • Alibaba Cloud Image Search SDK for .NET は以下の方法でインストールできます。
    • (推奨) 依存関係マネージャーを使用する場合。

      NuGet パッケージマネージャーを使用して、Alibaba Cloud Image Search SDK for .NET をインストールできます。 ソリューションエクスプローラーでプロジェクトを右クリックし、[NuGet パッケージの管理] を選択します。 表示されたページで [参照] タブをクリックし、aliyun-net-sdk-imagesearch と入力して [インストール] をクリックします。

    • .NET CLI を使用する場合。
       dotnet add package aliyun-net-sdk-imagesearch
    • Alibaba Cloud Image Search SDK for .NET をダウンロードしてインストールします。

      git clone コマンドを実行するか、または他の方法でaliyun-net-sdk-imagesearch をダウンロードしてソリューションを追加します。

サンプルコード

以下の完全なサンプルコードが用意されています。
using System;
using System.IO;
using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Profile;
using Aliyun.Acs.ImageSearch.Model.V20190325;
namespace Test
{
    class Demo
    {
        static void Main(string[] args)
        {
            DefaultProfile profile = DefaultProfile.GetProfile("<region>", "<your-access-key-id>", "<your-access-key-secret>");
            profile.AddEndpoint("<region>", "<region>", "ImageSearch", "imagesearch.<region>aliyuncs.com");
            IAcsClient client = new DefaultAcsClient(profile);
          
            // Add the image.
            AddImageRequest addRequest = new AddImageRequest();
            addRequest.InstanceName = "demo";
            addRequest.ProductId = "test";
            addRequest.PicName = "test";
            byte[] img = System.IO.File.ReadAllBytes("c:/demo.jpg");
            string pic = Convert.ToBase64String(img);
            addRequest.PicContent = pic;
            AddImageResponse addResponse = client.GetAcsResponse(addRequest);
            Console.WriteLine(addResponse.RequestId);
          
          // Search for images.
            SearchImageRequest searchRequest = new SearchImageRequest();
            searchRequest.InstanceName = "demo";
            searchRequest.Type = "searchByName";
            searchRequest.ProductId = "test";
            searchRequest.PicName = "test";
            SearchImageResponse searchResponse = client.GetAcsResponse(searchRequest);
            Console.WriteLine(searchResponse.RequestId);
          
            // Delete the image.
            DeleteImageRequest deleteRequest = new DeleteImageRequest();
            deleteRequest.InstanceName = "demo";
            deleteRequest.ProductId = "test";
            DeleteImageResponse deleteResponse = client.GetAcsResponse(deleteRequest);
            Console.WriteLine(deleteResponse.RequestId);
        }
    }
}