WebMatrix 2:フォルダーから Web サイトを作成する場合の注意点

執筆日時:

f:id:daruyanagi:20121202135815p:plain

前々回(WebMatrix 2:フォルダーから Web サイトを作ってみる - だるろぐ)は、空のフォルダーから Web サイトを作って HTML ファイルを配置し、それをローカル Web サーバー(IIS Express 7.5)でホストするところまで進めましたが、ぶっちゃけこの方法はあまりお勧めしません。ちゃんと初期画面の[テンプレート]ボタンを利用して新しいサイトを作るようにしましょう。

なぜかというと、通常の作業フローとはちょっと外れているため、いくつか困ったことが発生するからです。

f:id:daruyanagi:20121207114929p:plain

1. NuGet が使えない

リボン右端の[ギャラリー]ボタンを押しても、[拡張機能]ボタンしか出てきません。

つまり、NuGet ギャラリーが利用できません。

2. 実環境で動かすにはコンポーネントが足りません

[テンプレート]ボタンからサイトを作成すると、 App_Data フォルダや bin フォルダに ASP.NET の実行に必要な DLL が追加されます。しかし、空のフォルダーから Web サイトを作るとこれらが追加されないため、たとえば FTP でファイルをサーバーへ丸コピしても動作しません。

ローカルでは「WebMatrix 2」が気を利かせてくれるのでちゃんと動くのですけど。

解決策

f:id:daruyanagi:20121224183654p:plain

というわけで、あまりお勧めできないのですけど……いろいろ試していてひとつ気が付きました。

一度 Windows Azure Web サイトへサイトを発行してしまうと、その過程でコンポーネントの追加が行われるようですね。NuGet ギャラリーも利用できるようになります*1

スクリーンショットの右上と左に注目してください。[NuGet]ボタンが利用できるのと、App_Data フォルダや bin フォルダに ASP.NET の実行に必要な DLL が追加されているのが分かります。

f:id:daruyanagi:20121224184558p:plain

ただし、“ASP.NET Web ページ”(ここでは Razor 記法+その他コンポーネント群のことだと思ってくれていいと思います。)のバージョンは 1.0 です。

f:id:daruyanagi:20121224184608p:plainf:id:daruyanagi:20121224184614p:plain

“ASP.NET Web ページ”の最新版は 2.0 なのでアップデートをお勧めします。1.0 と 2.0 の違いは……まぁ、また今度。

……どうでもいい Tips でしたね!

Windows Azure Web サイトは、基本的な機能であればタダで利用できます*2。次回はその登録・利用フローでも説明しようかと思います*3

*1:ExpressWeb の場合はどうなるのか、などは検証していません。多分動くんじゃないかな

*2:ただし、本人確認のためにクレジットカードが必要。まぁ、大学生なら生協かどこかでカード作ってもらえばいいんじゃないかな

*3:というより、スクリーンショットととってあるので、死蔵するよりは公開しておきたいw