ASP.NET vNext alpha3はVisual Studio "14" CTP3と共にリリースされた。ASP.NETプロジェクトには、シンプルなプロジェクトファイル、ビルドイベントハンドラーを指定する機能、よりクリーンなソースフォルダーなどいくつかの興味深い変更がある。
簡単な要約 - .kprojファイルは、ASP.NET vNextとVisual Studio 14で導入された。ASP.NET vNextアプリケーションに最低限必要なのは以下のファイルである -
- project.jsonファイルはASP.NET vNextプロジェクトのビルド情報を保持している
- スタートアップクラスは、アプリケーションのHTTPリクエストパイプラインを構成する
- .kprojファイルは、ソリューション(.sln)ファイルと一緒にVisual Studioで使用され、維持される。これは、VSToolsPathとプロジェクトGUIDなどのVS固有の情報を保持している。このファイルは、Visual Studioを除いては必要ない。たとえば、コマンドラインからのビルド実行や開発に別のツールを使っている場合など
新しいファイルフォーマットに関する、より詳しい情報はASP.NET vNext OverviewとASP.NET vNext and Visual Studio "14"の記事で読むことができる。
(.csprojや.vbprojのような)従来のプロジェクトファイルフォーマットでは、別なセクションにXML形式ですべてのcompileとcontentアイテムがリストされている。これは、ファイルシステムをチェックしなくても、ソリューション エクスプローラでリストされるすべてのプロジェクトファイルがVisual Studioで許可される。.kprojファイルは、最初このフォーマットに従ったが、プロジェクトに手動でファイルを追加する必要がなかった - ファイルイベントを監視するファイルウォッチャーは、プロジェクトファイルをマニュアルで更新する。 CTP3では、MSはこれを完全にやめることを決めた - 現在.kprojファイルが存在するソースフォルダーにファイルが含まれていると、それはプロジェクトに含まれていることになる。
この即時性により、複数の開発者が同時にファイルを追加したときの競合を避けることができる。もうひとつの利点は、ランタイムがこれらのファイルを利用する方法と一致していることである。
この変更によりCTP2で構築された.kprojファイルはCTP3とは互換性がない。VS 14 CTP2で作成された既存のプロジェクトをCTP3で実行するには、.kprojを再作成するか、ファイル一覧を手動で削除必要がある。この手順の詳細は、公式発表を読んで欲しい。
その他のプロジェクトに関する改善点は -
- project.jsonで事前定義されたイベントをフックすることにより、ビルドやリストアのような異なる時間に呼び出されるスクリプトを指定できるようになった。
- 実験的なバージョンを使用するなど、言語バージョンを指定することができる。
- フォルダーのローカルがソリューションに移動するのではなく、%userprofile%/.kpm (または*nixの$HOME\.kpm)にNuGetパッケージフォルダーが移動された。これは柔軟で、global.jsonファイル内で場所を変更することがでいる。
- 特定の構成を追加サポート
ASP.NET vNextは、MicrosoftのWebフレームワークの構築とデプロイ手法を根本から変更しようとしている。いくつかの変更点に関する簡単な紹介は、私たちの以前のトピックでカバーしている。