作成者: Tom FitzMacken
Note
WebMatrix は、ASP.NET Web ページの統合開発環境としては推奨されなくなりました。 Visual Studio または Visual Studio Code を使用します。
この記事では、ASP.NET Web ページ (Razor) と WebMatrix についてよく寄せられる質問を一覧にまとめました。
チュートリアルで使用するソフトウェアのバージョン
- ASP.NET Web ページ (Razor) 3
- Visual Studio 2013
- WebMatrix 3
エラーやその他の問題に関する質問については、ASP.NET Web Pages (Razor) トラブルシューティング ガイドを参照してください。
ASP.NET Web ページ、ASP.NET Web Forms、および ASP.NET MVC の違いは何ですか?
次の 3 つはすべて、動的な Web アプリケーションを作成するための ASP.NET テクノロジです。
- ASP.NET Web ページは、HTML ページへの動的 (サーバー側) コードとデータベース アクセスの追加に重点を置き、シンプルで軽量な構文が特徴です。
- ASP.NET Web Forms は、ページ オブジェクト モデルと従来のウィンドウ型コントロール (ボタン、リストなど) に基づいたものです。 Web Forms では、クライアント ベース (Windows フォーム) 開発を行った経験のあるユーザーにはおなじみのイベント ベースのモデルを使用します。
- ASP.NET MVC は、ASP.NET のモデル ビュー コントローラー パターンを実装します。 "懸念事項の分離" (処理、データ、UI レイヤー) に重点を置いています。
3 つのフレームワークはすべて完全にサポートされており、ASP.NET チームが開発を続けています。 一般に、使用するフレームワークの選択は、ASP.NET の背景とエクスペリエンスによって異なります。
特に、ASP.NET Web ページは、HTML を既に知っているユーザーがページにサーバー処理を簡単に追加できるように設計されています。 これは、学生、趣味で使うユーザー、プログラミングを初めて使用する一般ユーザーにお勧めです。 また、ASP.NET Web テクノロジ以外の経験がある開発者にもお勧めです。
Web ページを操作するために WebMatrix が必要ですか?
いいえ。 WebMatrix は、ASP.NET Web ページの統合開発環境としては推奨されなくなりました。 Visual Studio または Visual Studio Code を使用します。
Visual Studio または Visual Studio Code を使用しない場合は、Microsoft Web Platform Installer を使用してコンポーネント製品を個別にインストールできます。 次の製品が必要です。
- Microsoft .NET Framework 4.5
- ASP.NET MVC 5 (ASP.NET Web ページ フレームワークもインストールされます)
- IIS Express (Web サーバー)
- Microsoft SQL Server Compact 4.0 (データベース)
テキスト エディターを使用して、.cshtml (または .vbhtml) ページを編集できます。
ツールを使用せずに SQL Server Compact データベース (.sdf ファイル) を管理するのは少し困難です。 Visual Studio には、.sdf データベースを管理するためのツールが含まれています。 コードで SQL コマンドを実行して、多くの SQL Server 管理タスクを実行することもできます。
統合開発環境 (IDE) を使用せずに .cshtml ページをテストするために、それらをライブ サーバーにデプロイできます。 (「WebMatrix を使用せずに ASP.NET Web ページ サイトをデプロイできますか?」参照)
IDE を使用せずに IIS Express を実行する
IIS Express を Web サーバーとしてコンピューターにインストールする場合は、これを使用してページをテストできます。 コマンド ラインから IIS Express を実行し、特定のポート番号に関連付けることができます。 その後、ブラウザーで .cshtml ファイルを要求するときに、そのポートを指定します。
Windows では、管理者特権でコマンド プロンプトを開き、C:\Program Files\IIS Express. に変更します。(64 ビットの場合は、 C:\Program Files (x86)\IIS Express のフォルダーを使用してください。)次に、サイトへの実際のパスを使用して、次のコマンドを入力します。
iisexpress.exe /port:35896 /path:C:\BasicWebSite
他のプロセスによってまだ予約されていない任意のポート番号を使用できます。 (通常、1024 以降のポート番号は無料です。)path
値には、.cshtml ファイルがある Web サイトのフォルダーのパスを使用します。
このコマンドを実行して、IIS Express でページが提供されるように設定したら、ブラウザーを開いて .cshtml ファイルを参照できます。 次のような URL を使用します。
http://localhost:35896/default.cshtml
IIS Express コマンド ライン オプションのヘルプについては、コマンド ラインに「iisexpress.exe /?
」と入力してください。
Web Pages ページで ASP.NET Web Forms コントロールを使用できますか?
いいえ。 CheckBox コントロール、検証コントロール、GridView コントロールなどの Web Forms コントロールは、Web Forms ページ (.aspx ファイル) でのみ動作します。 これらのコントロールには、Web Forms ページ フレームワークが必要です。
WebMatrix を使用せずに ASP.NET Web ページ サイトをデプロイできますか?
はい。 Web サイト ファイルは、サーバーに手動でコピーできます (通常は FTP を使用します)。 手動でコピーする場合は、SQL Server Compact (データベース) をサポートするファイルもコピーする必要があります。 詳細については、ツールを使用せずに Web ページ アプリケーションをデプロイするに関するブログ エントリを参照してください。
ログインをサポートするには WebSecurity ヘルパーを使用する必要がありますか?
いいえ。 ASP.NET Web Pages の一部である SimpleMembership
プロバイダーは 1 つのオプションです。 ASP.NET の一部である (Web Forms での操作に慣れている可能性がある) セキュリティ プロバイダーも使用できます。 たとえば、Web Forms の場合と同様に、ASP.NET Web ページでフォーム認証を使用できます。 フォーム認証を使用する方法の 1 つの例については、C#.NET を使用して ASP.NET アプリケーションにフォーム ベースの認証を実装する方法に関する Microsoft サポート記事を参照してください。
Windows 認証の使用方法については、ASP.NET Web ページでの Windows 認証の使用に関するブログ記事を参照してください。
ASP.NET Web ページは HTML5 をサポートしていますか?
はい。 ASP.NET Web ページ (.cshtml ページまたは .vbhtml ページ) で作成するページは、基本的に、ページがレンダリングされる前にサーバー上で実行されるコードも含む HTML ページです。 ユーザーのブラウザーが HTML5 をサポートしている限り、.cshtml ページまたは .vbhtml ページで HTML5 要素を使用できます。
Web ページで JavaScript と jQuery を使用できますか?
そして、 ASP.NET Web ページ (.cshtml ページまたは .vbhtml ページ) で作成するページは、サーバー コードを含む HTML ページにすぎません。 したがって、JavaScript や jQuery を使用して通常の HTML ページでできることは、.cshtml ページまたは .vbhtml ページでも実行できます。
WebMatrix のスターター サイト テンプレートには、多数の jQuery ライブラリが含まれています。 そのテンプレートを使用してサイトを作成する場合、Scripts フォルダーには jQuery コア ライブラリ (jquery-1.6.2.js) と jQuery 検証用のライブラリ (jquery.validate.js など) が含まれます。
ASP.NET Web ページで jQuery を使用する方法を示すブログ記事を次に示します。
Rachel Appel による WebMatrix を使用した ASP.NET Web ページへの jQuery の長所の追加
「WebMatrix と jQuery Forms」(作成者: Mike Brind)