SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Scott Guthrie氏 Blog翻訳

Web開発が気持ちよくなる「Visual Studio 2015」の新機能と、ASP.NET 4.6、ASP.NET 5、EF 7プレビューの紹介

連載:ScottGu's Blog翻訳

  • X ポスト
  • このエントリーをはてなブックマークに追加

ASP.NET 4.6ランタイムの改善

 今回のリリースには、ランタイム観点からのASP.NET拡張機能も数多く含まれています。

HTTP/2サポート

 ASP.NET 4.6からHTTP/2規格のサポートを導入しています。HTTPプロトコルのこの新しいバージョンは、ブラウザとWebサーバー間の要求と応答の真の多重化を実現します。このワクワクさせる更新は、WebプロジェクトでSSLを有効にするのと同じくらい簡単に、ASP.NETアプリケーションの応答性を即時に向上させます。

 SSL(HTTP/2プロトコルの要件である)を有効にすると、Windows 10のIISExpressは、更新プロトコルを使用してブラウザとの対話を開始します。プロトコル間の違いは明らかです。SSLなし(そしてHTTP/1.xを受信)また、HTTP/2プロトコルを有効にするためにSSLありで同じWebサイトを要求した時に、Microsoft Edgeが提示するネットワークパフォーマンスを考えてみてください。

 どちらのサンプルも、ASP.NETプロジェクトテンプレートのデフォルトホームページを示しています。どちらのシナリオも、ページのHTMLで1行目が取得されています。上のHTTP/1.xでは、最初の6つの要素が要求され、最後の2つの要素の要求待ちを示すグレイバーが表示されています。下のHTTP/2では、全8ページの要素は待ち時間なしで同時にロードされています。

.NETコンパイラプラットフォームのサポート

 現在、.NETコンパイラプラットフォーム(コードネームRoslyn)で提供される新しい.NETコンパイラをサポートしています。これらのコンパイラにより、WebフォームのマークアップとMVCビューページ全体で、Visual BasicとC#の新しい言語機能にアクセスできます。マークアップは、文字列展開のような新しい言語機能ではるかに単純で読みやすくなっています。

 以下のようなWebフォームリンクを構築する代わりに、

<a href="/Products/<%: model.Id %>/<%: model.Name %>"><%: model.Name %></a>

以下のようなマークアップがより読みやすい形で提供します。

<a href="<%: $"/Products/{model.Id}/{model.Name}" %>"><%: model.Name %></a>

 Microsoft.CodeDom.Providers.DotNetCompilerPlatform NuGetパッケージもバンドルし、コードやプロジェクトを変更することなく、Webフォーム資産をかなり高速にコンパイルできるようにしました。

Webフォームの非同期モデルバインディング

 ASP.NET 4でWebフォームアプリケーションのためにモデルバインディングが導入され、.NET 4.5では非同期メソッドが導入されました。新しい言語機能だと、要求は非同期にWebフォーム上でモデルバインディングメソッドを実行できるとのことです。チームは、@Pageディレクティブにasync=”true”属性を追加するぐらい簡単に、モデルバインディングメソッドからタスクを返すようにしました。

public async Task<IEnumerable<Product>> myGrid_GetData()
{
  var repo = new Repository();
  return await repo.GetAll();
}

 MSDN Web開発のブログに、この機能の詳細情報やヒントのデモ投稿があります。

ASP.NET 5

 2月にASP.NET 5を導入し、このリリースによる詳細事項をご紹介しました。ここで、ハイレベルなポイントを少し反復させて頂きます。より詳細については、ASP.NET 5紹介の投稿をご確認ください。

 Webアプリをホストする際により大きな柔軟性を提供するため、.NET Coreだけでなく完全な.NET FrameworkもASP.NET 5で動作するようになっています。ASP.NET MVC 6で、MVC、Web API、Webページからの補完機能を統合しています。ASP.NET 5で、オプトイン戦略に必要なコンポーネントだけを追加できるKatanaで得た教訓に基づいて、新しいHTTP要求パイプラインも導入しています。さらに、このリリースには、生産性向上のための複数開発機能が含まれており、より良いWebアプリケーションが構築できます。ASP.NET 5はオープンソースです。GitHubで見つけることができ、コードの確認およびダウンロード、変更の送信、変更された時の追跡が可能です。

 ASP.NET 5 ベータ5ランタイムパッケージはプレビューなので、本番環境での使用にはお勧めしません。本番アプリの開発にはASP.NET 4.6を継続してお使いください。最新のASP.NET 5ベータで追加された拡張機能や修正済みの問題についての詳細は、GitHub上のASP.NET 5 ベータ5の公開リリースノートをご確認ください。ASP.NET 5を開始するには、ASP.NETサイト上のドキュメントやチュートリアルをご確認ください。

 ASP.NETの詳細や最新情報は、Webdevブログやwww.asp.net/vnextのチュートリアルおよびドキュメントをご確認ください。

次のページ
Entity Framework

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Scott Guthrie氏 Blog翻訳連載記事一覧

もっと読む

この記事の著者

WINGSプロジェクト Chica(チカ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

Scott Guthrie(Scott Guthrie)

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/8867 2015/07/28 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング