Asp.net-core-project-layout

提供:Dev Guides
移動先:案内検索

ASP.NET Core-プロジェクトのレイアウト

この章では、ASP.NETコアプロジェクトがファイルシステムにどのように表示され、さまざまなファイルとディレクトリがどのように連携するかについて説明します。

前の章で作成した FirstAppDemo プロジェクトを開きましょう。

最初のデモアプリ

ソリューションエクスプローラーウィンドウで、*ソリューション*ノードを右クリックし、*ファイルエクスプローラー*で*フォルダーを開く*を選択します。

ソリューションを右クリック

ルートディレクトリには、 FirstAppDemo.sln および global.json の2つのファイルが表示されます。

Global Json

*FirstAppDemo.sln* はソリューションファイルです。 Visual Studioは既定でこの拡張機能を長年使用しており、Studioでアプリを開いて作業する場合は、ファイルをダブルクリックできます。
*global.json* ファイルもあります。 このファイルをVisual Studioで開きましょう。

Firstappdemo

ファイルでは、プロジェクトの設定が重要です。 このプロジェクト設定は、ソースコードを探す場所とプロジェクトを含むフォルダーをASP.NETに指示します。

ソースには「 src 」と「 test 」フォルダーの2つのフォルダーがあります。 プロジェクトとソースコードがこれらの2つのフォルダーのいずれかにない限り、コードをビルドすることはできません。 必要に応じて、これらの設定を変更できます。

Windowsエクスプローラーには、ディスクに*“ src” *フォルダーがあります。 テストフォルダーがありません。 テストフォルダーに、単体テストプロジェクトを配置できます。 「src」フォルダーをダブルクリックしましょう。

SRCフォルダー

FirstAppDemoプロジェクトとWebアプリケーションを確認できます。 次に、フォルダをダブルクリックします。

Webアプリケーション

これらはアプリケーションのソースコードファイルであり、ソリューションエクスプローラーウィンドウでこのフォルダー構造を確認することもできます。 これは、ASP.NET Coreの現在のバージョンでは、ファイルシステムがプロジェクトの内容を決定するためです。

新しいファイルをディスクに追加すると、ファイルがプロジェクトに追加されます。 ファイルを削除すると、ファイルはプロジェクトから削除されます。 すべてが同期したままであり、プロジェクト内のすべてのマニフェストを含むプロジェクトファイル(* .cs projファイル)が含まれる以前のバージョンのASP.NET Coreとは少し異なります。

ASP.NET Coreは、ファイルが変更されたとき、または新しいファイルが表示されたときにもアプリケーションをコンパイルします。

テキストエディタで Startup.cs ファイルを開いて、簡単な例を見てみましょう。

アプリケーションへのすべてのHTTP要求に応答するのはこのコード行であり、Hello World!で応答するだけです。

上記のスクリーンショットの文字列を、「* Hello World! 次のプログラムに示すように、このASP.NET Coreアプリケーション*」。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;

using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;

namespace FirstAppDemo {
   public class Startup {
     //This method gets called by the runtime.
     //Use this method to add services to the container.
     //For more information on how to configure your application,
     //visit http://go.microsoft.com/fwlink/?LinkID=398940
      public void ConfigureServices(IServiceCollection services) {
      }

     //This method gets called by the runtime.
     //Use this method to configure the HTTP request pipeline.
      public void Configure(IApplicationBuilder app,
         IHostingEnvironment env, ILoggerFactory loggerFactory) {
         loggerFactory.AddConsole();

         if (env.IsDevelopment()){
            app.UseDeveloperExceptionPage();
         }
         app.Run(async (context) => {
            await context.Response.WriteAsync(
               "Hello World! This ASP.NET Core Application");
         });
      }
   }
}

Ctrl + Sを押してこのファイルをテキストエディターに保存し、Webブラウザーに戻ってアプリケーションを更新します。

ブラウザを保存して開く

これで、変更がブラウザに反映されていることがわかります。

  • これは、ASP.NETがファイルシステムを監視し、ファイルが変更されたときにアプリケーションを自動的に再コンパイルするためです。 Visual Studioでアプリケーションを明示的にビルドする必要はありません。
  • 実際、Visual Studio Codeのようなまったく異なるエディターを使用できます。
  • Visual Studioで必要なことは、デバッガなしで実行してWebサーバーを起動することだけです。 Ctrl + F5を押して、ファイルを編集し、ファイルを保存し、ブラウザーを更新して変更を確認することもできます。
  • これは、C#のようなコンパイルされた言語でWebアプリケーションを構築するための素晴らしいワークフローです。