ASP.NET MVC Framework

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ASP.NET MVC
開発元 マイクロソフト
最終版
5.2.7 / 2018年11月28日 (5年前) (2018-11-28)[1]
最新評価版
6.0.0-rc2 / 2016年5月17日 (7年前) (2016-05-17)[2]
リポジトリ ウィキデータを編集
プログラミング
言語
C#, VB.NET[3]
対応OS Cross-platform
プラットフォーム .NET Framework, Mono
後継 ASP.NET Core
種別 Webアプリケーションフレームワーク
ライセンス Apache License 2.0
公式サイト dotnet.microsoft.com/apps/aspnet/mvc ウィキデータを編集
テンプレートを表示

ASP.NET MVCは、マイクロソフトによって開発されたWebアプリケーションフレームワークであり、 Model View Controller (MVC)パターンを実装している。新規の開発はすでに停止している。 プロプライエタリソフトウェアであるASP.NET Web Formsとは分離されており、ASP.NET MVCはオープンソースソフトウェアとなっている。

その後、ASP.NET Coreがリリースされ、ASP.NET、ASP.NET MVC、ASP.NET Web API、ASP.NET Web Pages (Razorページのみを使用するプラットフォーム)が統合された。 MVC 6はCoreのために放棄され、リリース予定はない。Coreは現在、「.NET 5」に統合予定である[4]

背景[編集]

ASP.NETをベースとしているASP.NET MVCを使用すると、ソフトウェア開発者は、モデルビューコントローラーの3つの役割の組み合わせでWebアプリケーションを構築できる。 MVCモデルは、次の3つの論理層でWebアプリケーションを定義する。

  • モデル(ビジネス層)
  • ビュー(表示レイヤー)
  • コントローラー(入力制御)

モデルは、アプリケーションの特定の側面の状態を表す。コントローラーは相互作用を処理し、アプリケーションの状態の変化を反映するようにモデルを更新してから、情報をビューに渡す。ビューは、コントローラーから必要な情報を受け取り、その情報を表示するためのユーザインタフェースを描画する[5]

2009年4月、ASP.NET MVCソースコードは、 Microsoft Public License (MS-PL) の下でリリースされた[6]

「ASP.NET MVCフレームワークは、既存のASP.NETの機能と統合された、軽量で[7]高度にテスト可能なプレゼンテーションフレームワークである。これらの統合された機能のいくつかは、マスターページとメンバーシップベースの認証を使う。 MVCフレームワークはSystem.Web.Mvcアセンブリで定義されている[8]。」

ASP.NET MVCフレームワークは、インタフェースベースのコントラクトを使用してモデル、ビュー、およびコントローラーを結合し、それによって各コンポーネントを個別にテストできるようにする[要出典]

Apache License2.0リリース[編集]

2012年3月、 スコット・ガスリーはブログで、マイクロソフトがオープンソースライセンス(Apache License 2.0)に基づきWebスタックの一部(ASP.NET MVC、 Razor 、およびWeb APIを含む)をリリースしたことを発表した[9]

ガスリーは次のように述べた。「そうすることで、コミュニティの全員がコードチェックイン、バグ修正、新機能の開発に関与してフィードバックを提供し、ソースコードとテストの最新バージョンの製品を毎日使用してビルドおよびテストできる、よりオープンな開発モデルが可能になる。」

ソースコードはCodePlexで公開されている。 ASP.NET Web Formsは、さまざまな理由でこのイニシアチブに含まれていない[10]

リリース履歴[編集]

リリース履歴
日付 バージョン
2007年12月10日 ASP.NET MVC CTP
2009年3月13日 ASP.NET MVC 1.0 [11]
2009年12月16日 ASP.NET MVC 2 RC [12]
2010年2月4日 ASP.NET MVC 2 RC 2 [13]
2010年3月10日 ASP.NET MVC 2 [14]
2010年10月6日 ASP.NET MVC3ベータ版[15]
2010年11月9日 ASP.NET MVC 3 RC
2010年12月10日 ASP.NET MVC 3 RC 2 [16]
2011年1月13日 ASP.NET MVC 3 [17]
2011年9月20日 ASP.NET MVC4開発者プレビュー[18]
2012年2月15日 ASP.NET MVC4ベータ版[19]
2012年5月31日 ASP.NET MVC 4 RC [20]
2012年8月15日 ASP.NET MVC 4 [21]
2013年5月30日 ASP.NET MVC 4 4.0.30506.0 [22]
2013年6月26日 ASP.NET MVC5プレビュー[23]
2013年8月23日 ASP.NET MVC 5 RC 1 [24]
2013年10月17日 ASP.NET MVC 5
2014年1月17日 ASP.NET MVC 5.1
2014年2月10日 ASP.NET MVC 5.1.1
2014年4月4日 ASP.NET MVC 5.1.2
2014年6月22日 ASP.NET MVC 5.1.3
2014年7月1日 ASP.NET MVC 5.2.0
2014年8月28日 ASP.NET MVC 5.2.2
2015年2月9日 ASP.NET MVC 5.2.3
2018年2月12日 ASP.NET MVC 5.2.4 [25]
2018年5月2日 ASP.NET MVC 5.2.5 [26]
2018年5月11日 ASP.NET MVC 5.2.6
2018年11月29日 ASP.NET MVC 5.2.7
ASP.NET Core MVC-リリース履歴
日付 バージョン
2016年5月17日 ASP.NET Core MVC 1.0.0-rc2 [27]
2016年8月12日 ASP.NET Core MVC 1.0.0
2016年8月17日 ASP.NET Core MVC 1.0.1
2016年11月17日 ASP.NET Core MVC 1.0.2
2017年3月6日 ASP.NET Core MVC 1.0.3 [28]
2017年5月9日 ASP.NET Core MVC 1.0.4
2017年9月20日 ASP.NET Core MVC 1.0.5
2016年11月14日 ASP.NET Core MVC 1.0.6
2016年11月16日 ASP.NET Core MVC 1.1.0
2017年1月27日 ASP.NET Core MVC 1.1.1
2017年3月6日 ASP.NET Core MVC 1.1.2
2017年5月9日 ASP.NET Core MVC 1.1.3
2017年9月20日 ASP.NET Core MVC 1.1.4
2017年11月14日 ASP.NET Core MVC 1.1.5
2017年12月12日 ASP.NET Core MVC 1.1.6
2018年3月13日 ASP.NET Core MVC 1.1.7
2017年8月11日 ASP.NET Core MVC 2.0.0 [29]
2017年11月14日 ASP.NET Core MVC 2.0.1
2018年1月9日 ASP.NET Core MVC 2.0.2
2018年3月13日 ASP.NET Core MVC 2.0.3
2018年5月30日 ASP.NET Core MVC 2.1.0 [30]
2018年6月18日 ASP.NET Core MVC 2.1.1 [31]
2018年12月4日 ASP.NET Core MVC 2.2.0 [32]
2019年9月29日 ASP.NET Core MVC 3.0.0
2019年12月3日 ASP.NET Core MVC 3.1.0 [33]
2020年1月14日 ASP.NET Core MVC 3.1.1 [34]

ビューエンジン[編集]

ASP.NET MVC3およびMVC4フレームワークで使用されるビューエンジンは、 RazorとWeb Formsである[35][36]。 両方のビューエンジンともMVC3フレームワークの一部である。デフォルトでは、MVCフレームワークのビューエンジンは、Razor .cshtml.vbhtml 、またはWeb Formsの.aspxページを使用して、データを構成するユーザインタフェースページのレイアウトを設計する。異なるビューエンジンも使用できる[37]。 さらに、デフォルトのASP.NET Web Formsのポストバックモデルの替わりに、すべての対話はASP.NET ルーティングメカニズムを通じてコントローラーにルーティングされる。ビューは異なるURLにマップできる[5]

その他のビューエンジン:

  • MVCContribライブラリには、Brail、NDjango、NHaml、NVelocity、SharpTiles、Spark、StringTemplate、XSLTの8つの代替ビューエンジンが含まれる[38]
  • StringTemplate View Engineは.NETにポートされたJavaテンプレートエンジンであるStringTemplateを利用する [39]
  • SparkはASP.NET MVC(およびCastle Project MonoRail)フレームワークのビューエンジンである[40]
  • NDjangoはDjango Webフレームワークのテンプレート言語の.NETへのポートであえる。 F#で記述されており、IntelliSenseの完全サポートを含むVisual Studio拡張機能が付属している[41]
  • Naked Objects for .NETは、ASP.NET MVCを使用したNaked Objectsパターンの実装である。

関連項目[編集]

脚注[編集]

  1. ^ Nuget package Microsoft.AspNet.Mvc”. 2019年1月10日閲覧。
  2. ^ MVC Releases”. Official Microsoft ASP.NET Site. 2016年5月18日閲覧。
  3. ^ Rick Anderson. “Intro to ASP.NET MVC 3 (VB)”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
  4. ^ https://devblogs.microsoft.com/dotnet/introducing-net-5/
  5. ^ a b Scott Guthrie. “ASP.NET MVC Framework”. 2007年10月22日時点のオリジナルよりアーカイブ。2007年10月23日閲覧。
  6. ^ Scott Guthrie. “ASP.NET mvc 1.0 Source Released”. 2009年4月3日時点のオリジナルよりアーカイブ。2009年4月2日閲覧。
  7. ^ Koirala (2014年9月27日). “Webform vs MVC performance comparison done with 25 user load test.”. codeproject. 2014年9月27日閲覧。
  8. ^ ASP.NET MVC”. aspnet4.com. 2015年1月17日閲覧。
  9. ^ Scott Guthrie. “ASP.NET MVC, Web API, Razor and Open Source”. 2012年3月29日閲覧。
  10. ^ Scott Hanselman. “ASP.NET MVC 4, ASP.NET Web API and ASP.NET Web Pages v2 (Razor) now all open source with contributions”. 2012年3月29日閲覧。
  11. ^ Download ASP.NET MVC 1.0 from Official Microsoft Download Center”. マイクロソフト. 2015年1月17日閲覧。[リンク切れ]
  12. ^ Phil Haack. “ASP.NET MVC 2 RC Released”. 2015年1月17日閲覧。
  13. ^ Phil Haack. “ASP.NET MVC 2 RC 2 Released”. 2015年1月17日閲覧。
  14. ^ Download ASP.NET MVC 2 RTM from Official Microsoft Download Center”. マイクロソフト. 2015年1月17日閲覧。
  15. ^ ASP.NET MVC 3”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
  16. ^ Announcing ASP.NET MVC 3 (Release Candidate 2)”. weblogs.asp.net. 2015年1月17日閲覧。
  17. ^ Download ASP.NET MVC 3 RTM from Official Microsoft Download Center”. マイクロソフト. 2015年1月17日閲覧。
  18. ^ ASP.NET”. CodePlex. 2015年1月17日閲覧。
  19. ^ ASP.NET MVC 4”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
  20. ^ MSDN Blogs”. マイクロソフト. 2015年1月17日閲覧。
  21. ^ MSDN Blogs”. マイクロソフト. 2015年1月17日閲覧。
  22. ^ ASP.NET and Web Tools 2012.2 Release Notes”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
  23. ^ Microsoft ASP.NET Team. “ASP.NET and Web Tools for Visual Studio 2013 Release Notes”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
  24. ^ Microsoft ASP.NET MVC 5.2.2”. NuGet. 2015年1月17日閲覧。
  25. ^ Announcing ASP.NET MVC 5.2.4, Web API 5.2.4, and Web Pages 3.2.4”. マイクロソフト. 2018年3月14日閲覧。
  26. ^ Announcing ASP.NET MVC 5.2.5, Web API 5.2.5, and Web Pages 3.2.5”. マイクロソフト. 2018年5月4日閲覧。
  27. ^ aspnet/Mvc”. GitHub. 2016年9月30日閲覧。
  28. ^ NuGet Gallery: Microsoft.AspNetCore.Mvc”. 2018年3月16日閲覧。
  29. ^ Release 2.0.0 · aspnet/Mvc”. Official Microsoft ASP.NET Site. 2017年8月29日閲覧。
  30. ^ Microsoft.AspNetCore.Mvc”. NuGet. 2018年5月30日閲覧。
  31. ^ Microsoft.AspNetCore.Mvc”. NuGet. 2018年6月18日閲覧。
  32. ^ aspnet/AspNetCore”. マイクロソフト (2019年11月14日). 2019年11月14日閲覧。
  33. ^ dotnet/aspnetcore”. マイクロソフト. 2020年12月21日閲覧。
  34. ^ dotnet/aspnetcore”. マイクロソフト. 2020年12月21日閲覧。
  35. ^ ScottGu's Blog - Introducing "Razor" – a new view engine for ASP.NET”. asp.net. 2020年12月21日閲覧。
  36. ^ ASP.NET MVC 3”. The Official Microsoft ASP.NET Site. 2020年12月21日閲覧。
  37. ^ Scott Hanselman's ASP.NET MVC Preview 2 Screencast Tutorials”. 2008年10月29日時点のオリジナルよりアーカイブ。2008年10月13日閲覧。
  38. ^ MVCContrib
  39. ^ string-template-view-engine-mvc - ASP.Net MVC ViewEngine for StringTemplate - Google Project Hosting”. google.com. 2020年12月21日閲覧。
  40. ^ Spark View Engine”. CodePlex. 2020年12月21日閲覧。
  41. ^ ndjango - An implementation of the Django Template Language on the .NET platform, using the F# language. - Google Project Hosting”. google.com. 2020年12月21日閲覧。

参考文献[編集]

  • Jon Galloway, Phil Haack, Brad Wilson, and K. Scott Allen, Professional ASP.NET MVC 3, Wrox, 2011, ISBN 1-118-07658-3
  • Jeffrey Palermo, Jimmy Bogard, Eric Hexter, Matthew Hinze, and Jeremy Skinner, ASP.NET MVC 4 in Action, Manning Publications, 2012, ISBN 978-1617-29041-1
  • Steven Sanderson, Adam Freeman, Pro ASP.NET MVC 3 Framework, Second Edition, Apress, 2011, ISBN 1-4302-3404-0
  • Jonathan McCracken, Test-Drive ASP.NET MVC, Pragmatic Bookshelf, 2010, ISBN 1-934356-53-0
  • Stephen Walther, ASP.NET MVC Framework Unleashed, Sam's, 2009, ISBN 0-672-32998-0
  • Arnaud Weil, Learn ASP.NET MVC, 2015, ISBN 1-32648303-X
  • Andrew Lock, ASP.NET Core in Action, Manning Publications, 2018, ISBN 978-1617-29461-7

外部リンク[編集]