Windows の VS Code で、初めての Alibaba Cloud SDK for .NET プロジェクトをセットアップして実行します。
前提条件
.NET がインストールされていること。「Windows に .NET をインストール」をご参照ください。
VS Code がインストールされていること。「Windows で .NET 開発環境をセットアップ」をご参照ください。
SDK の使用
OpenAPI Explorer からサンプルプロジェクトを使用する
OpenAPI Explorer からサンプルプロジェクトをダウンロードできない場合は、「既存のプロジェクトに SDK をインストールする」をご参照ください。
OpenAPI Explorer で、呼び出す API を検索します。たとえば、Elastic Compute Service (ECS) の DescribeRegions API を検索し、API 名をクリックしてデバッグページを開きます。

API パラメータを設定します。パラメータタブで、必要な値を入力します。右側のドキュメントタブで、オペレーションの説明、使用上の注意、請求情報を確認してください。

[SDK サンプルコード] タブで、SDK プロジェクトをダウンロードし、解凍します。

VS Code で、展開したプロジェクトフォルダを開きます。
アクセス認証情報として、RAM ユーザーの AccessKey ペアを取得します。詳細については、「RAM ユーザーの AccessKey を作成」をご参照ください。
重要AccessKey ペアを環境変数として設定する必要があります。詳細については、「Linux、macOS、Windows システムで環境変数を設定」をご参照ください。
プロジェクトを実行します。例外のないレスポンスが返されれば成功です。
cd core dotnet run
既存のプロジェクトに SDK をインストールする
VS Code で .NET プロジェクトフォルダを開きます。ターミナルで
dotnet new console -n V2SDKProjectを実行してコンソールプロジェクトを作成し、cd V2SDKProjectを実行してプロジェクトディレクトリに移動します。SDK をインストールします。 SDK センターで、目的のクラウド製品 (この例では ECS) を選択します。 [SDK バージョン] を [V2.0] に、[言語] を [C#] に設定します。 インストールコマンドをコピーしてターミナルで実行します。
dotnet add package AlibabaCloud.SDK.Ecs20140526 --version 4.1.9ECS クライアントを初期化します。
重要クライアントを初期化する際に、AccessKey ペアを使用して本人確認を完了する必要があります。 この場合、事前に AccessKey ペアを取得する必要があります。 AccessKey ペアの取得方法の詳細については、「AccessKey の作成」をご参照ください。
RAM ユーザーの AccessKey ペアを取得した後、環境変数に AccessKey ペアを設定する必要があります。 詳細については、「Linux、macOS、Windows で環境変数を設定する」をご参照ください。
エンドポイントの設定方法の詳細については、「エンドポイント」をご参照ください。
public static AlibabaCloud.SDK.Ecs20140526.Client CreateClient() { AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config { // 必須。ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。 AccessKeyId = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"), // 必須。ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。 AccessKeySecret = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"), }; // エンドポイントの詳細については、https://api.aliyun.com/product/Ecs をご参照ください config.Endpoint = "ecs.cn-shanghai.aliyuncs.com"; return new AlibabaCloud.SDK.Ecs20140526.Client(config); }API を呼び出します。対象となる API については、API ドキュメントをご確認ください。次の例では、ECS の
DescribeRegionsAPI を呼び出します。説明各 API には、
${APIName}${Request}という命名規則に従った個別のリクエストオブジェクトがあります (例:DescribeRegionsRequest)。AlibabaCloud.SDK.Ecs20140526.Models.DescribeRegionsRequest describeRegionsRequest = new AlibabaCloud.SDK.Ecs20140526.Models.DescribeRegionsRequest { AcceptLanguage = "en-US", };エラーの伝播、ログ記録、または復旧により、例外を処理します。詳細については、「例外処理」をご参照ください。
using System; using System.Collections; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; using Tea; using Tea.Utils; namespace AlibabaCloud.SDK.Sample { public class Sample { /** * AccessKey ID と AccessKey Secret を使用してクライアントを初期化します。 * @return Client * @throws Exception */ public static AlibabaCloud.SDK.Ecs20140526.Client CreateClient() { AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config { // 必須。ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。 AccessKeyId = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"), // 必須。ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。 AccessKeySecret = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"), }; config.Endpoint = "ecs.cn-shanghai.aliyuncs.com"; return new AlibabaCloud.SDK.Ecs20140526.Client(config); } public static void Main(string[] args) { AlibabaCloud.SDK.Ecs20140526.Client client = CreateClient(); AlibabaCloud.SDK.Ecs20140526.Models.DescribeRegionsRequest describeRegionsRequest = new AlibabaCloud.SDK.Ecs20140526.Models.DescribeRegionsRequest { AcceptLanguage = "en-US", }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); try { AlibabaCloud.SDK.Ecs20140526.Models.DescribeRegionsResponse resp = client.DescribeRegionsWithOptions(describeRegionsRequest, runtime); Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(resp)); } catch (TeaException error) { // これはデモ用です。例外は慎重に処理し、プロジェクトで無視しないでください。 // エラーメッセージ Console.WriteLine(error.Message); // 診断 URL Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } catch (Exception _error) { TeaException error = new TeaException(new Dictionary<string, object> { { "message", _error.Message } }); // これはデモ用です。例外は慎重に処理し、プロジェクトで無視しないでください。 // エラーメッセージ Console.WriteLine(error.Message); // 診断 URL Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } } } }サンプルコードを実行します。
dotnet run