BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース ASP.NET Core 2に新機能Razor Pagesが加わる

ASP.NET Core 2に新機能Razor Pagesが加わる

原文(投稿日:2017/08/29)へのリンク

.NET Core 2Entity Framework Core 2.0のリリースに続く3番目のピースは、ASP.NET Core 2.0だ。今回のリリースでは、全体的なパフォーマンス向上、Razor Pages、新しい開発テンプレート、Azure Diagnosticsのサポート改善など、いくつかの新機能と改良が提供されている。

 

まずはRazor Pagesを見てみよう。Razor Pagesは標準的なMVC Viewに似ているが、@Pageディレクティブを使用して、それがRazor Pageであることを指示する。Microsoftは現在、ASP.NET CoreでのWeb アプリのUI構築方法としてRazor Pagesを推奨しているが、当然ながら開発者には、自分自身に最適なアプローチを選択する自由がある。Razor Pagesを使用することで、(標準的なASP.NET MVCアプリケーションの場合のように)コントローラを経由せずに直接リクエストを処理するWebページの記述が可能になる。

 

ASP.NET Core 2に移行することのもうひとつのメリットは、簡略化されたパッケージ参照を利用できることだ。プロジェクトの.csprojファイルに必要なのは、Microsoft.AspNetCoreの参照のみである。metapackageによって、複雑な定義をすることなく、アプリケーションが必要とする全ライブラリがすべて参照可能であることが保証される。Webアプリの公開時には必要のあるライブラリのみがアプリケーションと合わせて配布されるため、ファイルが肥大する心配もない。metapackageを使うもうひとつのメリットは、必要なパッケージをすべてプリコンパイルする.NET Core Runtime Storeを利用することによって、アプリケーションの起動時間の短縮が可能になることだ。metapackageは開発者の便宜を図ることが目的なので、これまで通りMicrosoft.AspNet.Core.*内の特定のパッケージを参照したとしても問題はない。

 

新機能をサポートするためにASP.NET Core 2テンプレートが拡張され、Razor Pages(名称はWeb Application)、Web API、MVCベースのWebアプリケーション、Angular、React.js、React.js & Redux用のテンプレートが追加された。これらはすべてコマンドラインからも利用可能で、Visual Studio 2017には依存しない。

 

Razor言語エンジンは、明示的に有効にすることで、C# 7.1の機能をサポートする。  これら新機能を利用するためには、プロジェクトファイルに以下のプロパティを追加した上で、

<LangVersion>latest</LangVersion>

ソリューションをリロードして変更を有効にすればよい。


アプリケーションをAzureにデプロイする予定がある場合、ASP.NET Core 2用に開発したアプリケーションであれば、変更の必要なくAzure App Serviceを利用することができる。この操作はVS2017内で実行することも、Azureポータルで直接実行することも可能だ。

 

既存のASP.NET Core 1.X用パッケージを使用している開発者は、Microsoftのアップグレードガイドを参照して、アプリケーションをASP.NET Core 2.0対応にアップグレードする場合のマイグレーションの詳細を確認することができる。ASP.NET 2.0を使用するには、.NET Core 2 SDKをダウンロードすればよい。VS2017とは独立して利用可能だ。

 
 

この記事を評価

採用ステージ
スタイル
 
 

この記事に星をつける

おすすめ度
スタイル

BT