Visual Studio アプリ プロジェクトを探索する

完了

Web アプリが正常に作成され、Azure に発行されました。 しかし、変更を加えたい場合はどうなるでしょうか。 Visual Studio にはアプリの発行先が記憶されているので、2 回クリックするだけでアプリを更新したり、変更したりできます。

プロジェクトの構造を調べる

Visual Studio で ASP.NET Core Web アプリを作成したので、今度は Web サイトを編集したり、カスタマイズしたりする必要があります。 プロジェクトの構造を調べて、Visual Studio によって作成されたものを見てみましょう。

依存関係

[依存関係] フォルダーには、アプリを稼働させるための ASP.NET Core の内部構造が含まれます。 特定のサード パーティ製パッケージを追加していない場合、このフォルダーに多くの時間を費やす必要はありません。

プロパティ

[プロパティ] フォルダーには、Web アプリをホストしている場所についての構成データが含まれます。 PublishProfiles フォルダーを展開すると、Alpine Ski Hill サイトの URL が表示されます。 各発行プロファイルは .xml ファイルであり、Visual Studio がファイルのアップロードに使用する Azure のアドレスなど、発行の構成情報が含まれます。

wwwroot

wwwroot ファイルには、css、js、画像、lib ファイルなど、サイトのすべての静的資産が含まれます。 サイトのスタイルを設定したり、サイトに機能を追加したりする準備ができたら、ここで作業します。

ページ

[ページ] フォルダーには、サイトのページ用の Razor テンプレートが含まれます。 Razor は、ASP.NET Web ページにサーバー コードを埋め込むための構文です。 これには HTML が含まれており、データを表示し、サイトでロジックを実行するための特別な規則があります。

サイト内の各ページは、2 つのコード ファイルで表されます。

  • .cshtml ファイル。これは Razor マークアップ ファイルです。 このファイルには、表示用の HTML と若干の C# ロジックが含まれます。

  • .cs ファイル。これは PageModel クラスから継承される C# コードビハインドです。 このファイルでは、HTTP 要求をインターセプトして、Razor ファイルにデータが渡される前にその要求に対して何らかの処理を行うことができます。

appsetting.json

これは、ASP.NET Core 用の構成ファイルです。

Program.cs

Program.cs ファイルは、サイト用の Web ホストを構成して起動します。

Razor テンプレートの概要

Web サイトに対していくつかの基本的な変更を行います。 Razor テンプレートを使用して Web アプリをカスタマイズする方法に関する基本的な知識が必要です。

Razor とは

Razor は、C# で動的な Web ページを作成するために使用される ASP.NET 構文です。 サーバーで Razor ページが読み取られると、HTML がレンダリングされる前に、C# コードが実行されます。 これにより、動的なコンテンツをすばやく生成できます。

Razor では、@ ディレクティブを使用してページの処理方法を ASP.NET に伝えます。

例として、Privacy.cshtml ページのコードを見てください。

@page
@model PrivacyModel
@{
    ViewData["Title"] = "Privacy Policy";
}
<h1>@ViewData["Title"]</h1>

<p>Use this page to detail your site's privacy policy.</p>
  • @page ディレクティブは、Razor ページとしてこのファイルを処理するよう ASP.NET に指示します。
  • @model ディレクティブは、この Razor ページを PrivacyModel という名前の C# クラスと結び付けるよう ASP.NET に指示します。

Razor では、コードと HTML の切り替えのためにも @ 記号が使用されます。 上記のスニペットを見ると、@{ ... } があることがわかります。 これは Razor コード ブロックであり、実行されますが、レンダリングされません

コード ステートメントの出力をレンダリングするには、C# 式の前に @ を使用します。 上記のコード ブロックの <h1> タグでの例があります。

Web サイトの作成と発行は、優れた Web サイトを作成する最初のステップに過ぎません。 コンテンツの追加を始めたら、サイトを更新する必要があります。 サイトを Azure に発行した後はいつでも更新できます。