Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

の .NET チュートリアル AWS Cloud9

フォーカスモード
の .NET チュートリアル AWS Cloud9 - AWS Cloud9

AWS Cloud9 は、新規顧客には利用できなくなりました。 AWS Cloud9 の既存のお客様は、通常どおりサービスを引き続き使用できます。詳細はこちら

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Cloud9 は、新規顧客には利用できなくなりました。 AWS Cloud9 の既存のお客様は、通常どおりサービスを引き続き使用できます。詳細はこちら

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

このチュートリアルでは、 AWS Cloud9 開発環境でいくつかの .NET コードを実行できます。

このチュートリアルに従い、このサンプルを作成すると、 AWS アカウントに料金が発生する可能性があります。Amazon EC2 や Amazon S3 などのサービスに対して発生する可能性がある料金も含まれます。詳細については、「Amazon EC2 料金表」および「Amazon S3 料金表」を参照してください。

前提条件

このサンプルを使用する前に、設定が次の要件を満たしていることを確認します。

  • 既存の AWS Cloud9 EC2 開発環境が必要です。このサンプルは、Amazon Linux または Ubuntu Server を実行する Amazon EC2 インスタンスに接続された EC2 環境が既にあることを前提としています。別のタイプの環境またはオペレーティングシステムがある場合、このサンプルの指示を関連ツールを設定する必要がある場合があります。詳細については、「での環境の作成 AWS Cloud9」を参照してください。

  • 既存の環境の AWS Cloud9 IDE が既に開いている。環境を開くと、 はウェブブラウザでその環境の IDE AWS Cloud9 を開きます。詳細については、「で環境を開く AWS Cloud9」を参照してください。

ステップ 1: 必要なツールをインストールする

このステップでは、このサンプルの実行に必要な .NET SDK を環境にインストールします。

  1. .NET SDK の最新バージョンが環境に既にインストールされているかどうかを確認します。これを行うには、IDE AWS Cloud9 のターミナルセッションで、 --versionオプションを使用して .NET Core コマンドラインインターフェイス (CLI) を実行します。

    dotnet --version

    .NET コマンドラインツールのバージョンが表示され、バージョンが 2.0 以上の場合、ステップ 3: .NET コンソールアプリケーションプロジェクトを作成する まで進みます。バージョンが 2.0 より古い場合、または bash: dotnet: command not found などのエラーが表示された場合は、.NET SDK のインストールを続行します。

  2. Amazon Linux の場合、IDE AWS Cloud9 のターミナルセッションで次のコマンドを実行して、最新のセキュリティ更新プログラムとバグ修正がインストールされていることを確認し、.NET SDK に必要なlibunwindパッケージをインストールします。(新しいターミナルセッションを開始するには、メニューバーで、[Window (ウィンドウ)]、[New Terminal (新しいターミナル)] の順に選択します。)

    sudo yum -y update sudo yum -y install libunwind

    Ubuntu Server の場合、IDE AWS Cloud9 のターミナルセッションで次のコマンドを実行して、最新のセキュリティ更新プログラムとバグ修正がインストールされていることを確認します。(新しいターミナルセッションを開始するには、メニューバーで、[Window (ウィンドウ)]、[New Terminal (新しいターミナル)] の順に選択します。)

    sudo apt -y update
  3. 次のコマンドを実行して、.NET SDK インストーラスクリプトを環境にダウンロードします。

    wget https://dot.net/v1/dotnet-install.sh
  4. 次のコマンドを実行して、インストールスクリプトを現在のユーザーに実行可能にします。

    sudo chmod u=rx dotnet-install.sh
  5. 次のコマンドを実行して、.NET SDK をダウンロードし、インストールするインストーラスクリプトを実行します。

    ./dotnet-install.sh -c Current
  6. PATH に .NET SDK を追加します。これを行うには、次のように、環境のシェルプロファイル (たとえば、.bashrcファイル) で、$HOME/.dotnet サブディレクトリを環境の PATH 変数に追加します。

    1. .bashrc vi コマンドを使用して、 ファイルを編集のために開きます。

      vi ~/.bashrc
    2. Amazon Linux では、下向き矢印または j キーを使用して、export PATH で始まる行に移動します。

      Ubuntu Server では、「G」と入力して、ファイルの最後の行に移動します。

    3. 右向き矢印または $ キーを使用して、行の末尾に移動します。

    4. i キーを押して挿入モードに切り替えます (表示の末尾に -- INSERT --- と表示されます)。

    5. Amazon Linux の場合、:$HOME/.dotnet を入力することで、$HOME/.dotnet サブディレクトリを PATH 変数に追加します。必ずコロン文字 (:) を入力します。行は以下のようになります。

      export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.dotnet

      Ubuntu Server では、右矢印キーを押し、Enter を 2 回押してから、ファイルの末尾に次の行を単独で入力します。

      export PATH=$HOME/.dotnet:$PATH
    6. ファイルを保存します。これを行うには、Esc キーを押して (-- INSERT --- が表示の末尾から消えます)、:wq と入力し (ファイルに書き込んで終了します)、Enter キーを押します。

  7. .bashrc ファイルをソースに指定して、.NET SDK をロードします。

    . ~/.bashrc
  8. --help オプションで .NET CLI を実行することにより、.NET SDK がロードされることを確認します。

    dotnet --help

    成功した場合、.NET SDK のバージョン番号が、その他の使用状況情報と共に表示されます。

  9. 環境に .NET SDK インストーラスクリプトを保持する必要がなくなった場合は、次の方法で削除できます。

    rm dotnet-install.sh

ステップ 2。(オプション): Lambda 関数用の .NET CLI 拡張をインストールする

このチュートリアルでは必須ではありませんが、 Amazon.Lambda.Toolsパッケージもインストールする場合は、.NET CLI を使用して AWS Lambda 関数と AWS Serverless Application Model アプリケーションをデプロイできます。

  1. 次のコマンドを実行して、このパッケージをインストールします。

    dotnet tool install -g Amazon.Lambda.Tools
  2. 今、PATH および DOTNET_ROOT 環境変数を設定して、インストールされた Lambda ツールを指します。.bashrc ファイルを見つけるには export PATH セクションを開き、次のように表示されるように編集します (このファイルの編集の詳細については、ステップ 1 を参照してください)。

    export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.dotnet:$HOME/.dotnet/tools export DOTNET_ROOT=$HOME/.dotnet

ステップ 3: .NET コンソールアプリケーションプロジェクトを作成する

このステップでは、.NET を使用して hello という名前のプロジェクトを作成します。このプロジェクトには、.NET が IDE のターミナルからシンプルなアプリケーションを実行するのに必要なすべてのファイルが含まれています。アプリケーションのコードは C# で書かれています。

.NET コンソールアプリケーションプロジェクトを作成します。これを行うには、new コマンドを使用して .NET CLI を実行します。次のように、使用するコンソールアプリケーションオブジェクトテンプレートのタイプとプログラミング言語 (このサンプルでは C#) を指定します。

-n オプションは、プロジェクトが新しいディレクトリ hello に出力されることを示します。続いて、 そのディレクトリに移動します。

dotnet new console -lang C# -n hello cd hello

前述のコマンドは、いくつかのファイルを含む obj という名前のサブディレクトリを追加し、追加のスタンドアロンファイルを hello ディレクトリに追加します。次の 2 つのキーファイルに注意してください。

  • hello/hello.csproj ファイルには、コンソールアプリケーションプロジェクトに関する情報が含まれています。

  • hello/Program.cs ファイルには、実行するアプリケーションのコードが含まれています。

ステップ 4: コードを追加する

このステップでは、アプリケーションにコードを追加します。

IDE AWS Cloud9 の環境ウィンドウから、 hello/Program.cs ファイルを開きます。

エディタで、ファイルの現在の内容を次のコードに置き換えて、Program.cs ファイルを保存します。

using System; namespace hello { class Program { static void Main(string[] args) { if (args.Length < 2) { Console.WriteLine("Please provide 2 numbers"); return; } Console.WriteLine("Hello, World!"); Console.WriteLine("The sum of 2 and 3 is 5."); int sum = Int32.Parse(args[0]) + Int32.Parse(args[1]); Console.WriteLine("The sum of {0} and {1} is {2}.", args[0], args[1], sum); } } }

ステップ 5: コードを構築および実行する

このステップでは、プロジェクトとその依存関係を、実行可能なアプリケーションファイルを含む 1 つのバイナリファイルのセットに構築します。次にアプリケーションを実行します。

  1. IDE では、次のように .NET のビルダーを作成します。

    1. メニューバーで、[Run (実行)]、[Build System (ビルドシステム)]、[New Build System (新しいビルドシステム)] の順に選択します。

    2. [My Builder.build] タブで、タブの内容を以下のコードに置き換えます。

      { "cmd" : ["dotnet", "build"], "info" : "Building..." }
    3. File (ファイル)]、[Save As (名前を付けて保存)]の順に選択します。

    4. [Filename (ファイル名)] に「.NET.build」と入力します。

    5. [Folder (フォルダ)] に「/.c9/builders」と入力します。

    6. [Save] を選択します。

  2. エディタに Program.cs ファイルの内容を表示した状態で、[実行]、[ビルドシステム]、[.NET] の順に選択します。次に、[Run (実行)]、[Build (ビルド)] を選択します。

    このビルダは、bin という名前のサブディレクトリを追加し、Debug という名前のサブディレクトリを hello/obj サブディレクトリに追加します。次の 3 つのキーファイルに注意してください。

    • この hello/bin/Debug/netcoreapp3.1/hello.dll ファイルは、実行可能なアプリケーションファイルです。

    • hello/bin/Debug/netcoreapp3.1/hello.deps.json ファイルは、アプリケーションの依存関係をリストします。

    • hello/bin/Debug/netcoreapp3.1/hello.runtimeconfig.json ファイルは、アプリケーションの共有ランタイムとそのバージョンを指定します。

    注記

    フォルダ名 netcoreapp3.1 は、この例で使用されている .NET SDK のバージョンを反映しています。インストールしているバージョンによっては、フォルダ名に異なる番号が表示される場合があります。

  3. 次のように、.NET のランナーを作成します。

    1. メニューバーで、[Run (実行)]、[Run With (次で実行)]、[New Runner (新しいランナー)] の順に選択します。

    2. [My Runner.run] タブで、タブの内容を以下のコードに置き換えます。

      { "cmd" : ["dotnet", "run", "$args"], "working_dir": "$file_path", "info" : "Running..." }
    3. File (ファイル)]、[Save As (名前を付けて保存)]の順に選択します。

    4. [Filename (ファイル名)] に「.NET.run」と入力します。

    5. [Folder (フォルダ)] に「/.c9/runners」と入力します。

    6. [Save] を選択します。

  4. 追加する 2 つの整数を指定してアプリケーションを実行します (例: 59) を追加します。

    1. エディタに Program.cs ファイルの内容を表示した状態で、[Run (実行)]、[Run Configurations (実行設定)]、[New Run Configuration (新しい実行設定)] の順に選択します。

    2. [[新規] - アイドル] タブで、[ランナー: 自動] を選択し、[.NET] を選択します。

    3. [Command (コマンド)] ボックスに、「hello 5 9」と入力します。

    4. [Run] (実行) を選択します。

      デフォルトでは、このランナーは .NET に hello/bin/Debug/netcoreapp3.1 ディレクトリで hello.dll ファイルを実行するよう指示します。

      出力を以下と比較します。

      Hello, World! The sum of 2 and 3 is 5. The sum of 5 and 9 is 14.

ステップ 6: を使用する .NET コンソールアプリケーションプロジェクトを作成してセットアップする AWS SDK for .NET

このサンプルを強化して、 AWS SDK for .NET を使用して Amazon S3 バケットを作成し、使用可能なバケットを一覧表示してから、先ほど作成したバケットを削除できます。

この新しいプロジェクトでは、 AWS SDK for .NETへの参照を追加します。 AWS SDK for .NET は、.NET コードから Amazon S3 などの AWS サービスとやり取りする便利な方法を提供します。次に、 環境で AWS 認証情報管理を設定します。は、 AWS サービスとやり取りするためにこれらの認証情報 AWS SDK for .NET を必要とします。

プロジェクトを作成するには

  1. .NET コンソールアプリケーションプロジェクトを作成します。これを行うには、使用するコンソールアプリケーションプロジェクトのテンプレートタイプとプログラミング言語を指定し、new コマンドを使用して .NET CLI を実行します。

    -n オプションは、プロジェクトが新しいディレクトリ s3 に出力されることを示します。続いて、 そのディレクトリに移動します。

    dotnet new console -lang C# -n s3 cd s3
  2. AWS SDK for .NETで Amazon S3 パッケージへのプロジェクトリファレンスを追加します。これを行うには、NuGet で Amazon S3 パッケージの名前を指定し、add package コマンドを使用して .NET Core を実行します。(NuGet では、.NET のパッケージを作成、ホスト、使用する方法が定義され、それらのロールごとにツールが用意されています)。

    dotnet add package AWSSDK.S3

    Amazon S3 パッケージにプロジェクトリファレンスを追加すると、NuGet は AWS SDK for .NETの他の部分にもプロジェクトリファレンスを追加します。

    注記

    NuGet の他の AWS 関連パッケージの名前とバージョンについては、NuGet ウェブサイトの「aws-sdk でタグ付けされた NuGet パッケージ」を参照してください。 NuGet

AWS 認証情報管理を設定するには

を使用して AWS サービスを AWS SDK for .NET 呼び出すたびに、呼び出しで一連の AWS 認証情報を指定する必要があります。これらの認証情報は、 にその呼び出しを行うための適切なアクセス許可 AWS SDK for .NET があるかどうかを決定します。認証情報に適切なアクセス権限がない場合は、呼び出しは失敗します。

認証情報を環境に保存するには、の環境 AWS のサービス からの呼び出し AWS Cloud9 の指示を実行してから、このトピックに戻ります。

詳細については、AWS 「 デベロッパーガイド」の「認証情報の設定」を参照してください。 AWS SDK for .NET

ステップ 7: AWS SDK コードを追加する

このステップでは、Amazon S3 を操作してバケットを作成し、作成したばかりのバケットを削除した後、利用できるバケットのリストを表示するコードを追加します。

IDE AWS Cloud9 の環境ウィンドウから、 s3/Program.cs ファイルを開きます。エディタで、ファイルの現在の内容を次のコードに置き換えて、Program.cs ファイルを保存します。

using Amazon; using Amazon.S3; using Amazon.S3.Model; using Amazon.S3.Util; using System; using System.Threading.Tasks; namespace s3 { class Program { async static Task Main(string[] args) { if (args.Length < 2) { Console.WriteLine("Usage: <the bucket name> <the AWS Region to use>"); Console.WriteLine("Example: my-test-bucket us-east-2"); return; } if (args[1] != "us-east-2") { Console.WriteLine("Cannot continue. The only supported AWS Region ID is " + "'us-east-2'."); return; } var bucketRegion = RegionEndpoint.USEast2; // Note: You could add more valid AWS Regions above as needed. using (var s3Client = new AmazonS3Client(bucketRegion)) { var bucketName = args[0]; // Create the bucket. try { if (await AmazonS3Util.DoesS3BucketExistV2Async(s3Client, bucketName)) { Console.WriteLine("Cannot continue. Cannot create bucket. \n" + "A bucket named '{0}' already exists.", bucketName); return; } else { Console.WriteLine("\nCreating the bucket named '{0}'...", bucketName); await s3Client.PutBucketAsync(bucketName); } } catch (AmazonS3Exception e) { Console.WriteLine("Cannot continue. {0}", e.Message); } catch (Exception e) { Console.WriteLine("Cannot continue. {0}", e.Message); } // Confirm that the bucket was created. if (await AmazonS3Util.DoesS3BucketExistV2Async(s3Client, bucketName)) { Console.WriteLine("Created the bucket named '{0}'.", bucketName); } else { Console.WriteLine("Did not create the bucket named '{0}'.", bucketName); } // Delete the bucket. Console.WriteLine("\nDeleting the bucket named '{0}'...", bucketName); await s3Client.DeleteBucketAsync(bucketName); // Confirm that the bucket was deleted. if (await AmazonS3Util.DoesS3BucketExistV2Async(s3Client, bucketName)) { Console.WriteLine("Did not delete the bucket named '{0}'.", bucketName); } else { Console.WriteLine("Deleted the bucket named '{0}'.", bucketName); }; // List current buckets. Console.WriteLine("\nMy buckets now are:"); var response = await s3Client.ListBucketsAsync(); foreach (var bucket in response.Buckets) { Console.WriteLine(bucket.BucketName); } } } } }

ステップ 8: AWS SDK コードを構築して実行する

このステップでは、プロジェクトとその依存関係を、実行可能なアプリケーションファイルを含む 1 つのバイナリファイルのセットに構築します。次にアプリケーションを実行します。

  1. プロジェクトをビルドします。これを行うには、エディタに s3/Program.cs ファイルの内容を表示した状態で、[Run (実行)]、[Build (ビルド)] の順に選択します。

  2. 次のように、作成する Amazon S3 バケットの名前と、バケットを作成する AWS リージョンの ID (例: my-test-bucketus-east-2) をがついたアプリケーションを実行します。

    1. エディタに s3/Program.cs ファイルの内容を表示した状態で、[Run (実行)]、[Run Configurations (実行設定)]、[New Run Configuration (新しい実行設定)] の順に選択します。

    2. [[新規] - アイドル] タブで、[ランナー: 自動] を選択し、[.NET] を選択します。

    3. コマンドボックスに、アプリケーションの名前、作成する Amazon S3 バケットの名前、バケットを作成する AWS リージョンの ID (例: ) を入力しますs3 my-test-bucket us-east-2

    4. [Run] (実行) を選択します。

      デフォルトでは、このランナーは .NET に s3/bin/Debug/netcoreapp3.1 ディレクトリで s3.dll ファイルを実行するよう指示します。

      結果を以下の出力と比較します。

      Creating a new bucket named 'my-test-bucket'... Created the bucket named 'my-test-bucket'. Deleting the bucket named 'my-test-bucket'... Deleted the bucket named 'my-test-bucket'. My buckets now are:

ステップ 9: クリーンアップする。

このサンプルの使用が終了した後に AWS アカウントで継続的に課金されないようにするには、環境を削除する必要があります。手順については、での環境の削除 AWS Cloud9 を参照してください。

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.