ASP.NET MVC

ASP.NET MVC
開発者マイクロソフト
最終リリース
5.3.0 / 2023年10月23日[ 1 ] ( 2023-10-23 )
プレビューリリース
6.0.0-rc2 / 2016年5月17日[ 2 ] ( 2016-05-17 )
リポジトリ
書かれたC#VB.NET [ 3 ]
オペレーティング·システムクロスプラットフォーム
プラットフォーム.NET Frameworkモノ
後継ASP.NET コア
タイプWebアプリケーションフレームワーク
ライセンスApacheライセンス2.0
Webサイトドットネット.microsoft .com /apps /aspnet /mvcWikidataで編集する

ASP.NET MVCは、モデル・ビュー・コントローラ(MVC)パターンを実装する、Microsoftが開発したWebアプリケーションフレームワークです。現在、開発は活発に行われていません。ASP.NET Webフォームコンポーネント(プロプライエタリ)を除き、オープンソースソフトウェアです。

その後、 ASP.NET、ASP.NET MVC、ASP.NET Web API、そしてASP.NET Web Pages ( Razorページのみを使用するプラットフォーム)を統合したASP.NET Coreがリリースされました。MVC 6はCoreの登場により廃止され、リリースの予定はありません。Coreは現在、「.NET 5」に統合される予定です。[ 4 ]

ASP.NET MVCを使用している有名なサイトとしては、Stack Overflow[ 5 ] MicrosoftGoDaddyAncestry.comなどがあります。[ 6 ]

背景

ASP.NETをベースにしたASP.NET MVC では、ソフトウェア開発者がモデルビューコントローラーの3つの役割を組み合わせたWebアプリケーションを構築できます。MVCモデルは、3つのロジック層でWebアプリケーションを定義します。

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

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

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

ASP.NET MVCフレームワークは、既存のASP.NET機能と統合された軽量で[ 9 ]高度にテスト可能なプレゼンテーションフレームワークです。統合された機能には、マスターページやメンバーシップベースの認証などがあります。MVCフレームワークはSystem.Web.Mvcアセンブリで定義されています。[ 10 ]

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

Apacheライセンス2.0リリース

2012年3月、スコット・ガスリーは自身のブログで、マイクロソフトがWebスタックの一部(ASP.NET MVC、Razor、Web APIを含む)をオープンソースライセンス(Apache License 2.0)で公開したことを発表しました。[ 11 ]

ガスリー氏は、「そうすることで、よりオープンな開発モデルが実現し、コミュニティの誰もがコードのチェックイン、バグ修正、新機能の開発に参加してフィードバックを提供できるようになり、最新バージョンのソースコードとテストを使用して製品を毎日構築およびテストできるようになります」と書いています。

ソースコードは現在CodePlexにあります。ASP.NET Web Formsは様々な理由からこの取り組みには含まれていませんでした。[ 12 ]

リリース履歴

リリース履歴
日付バージョン
2007年12月10日ASP.NET MVC CTP
2009年3月13日ASP.NET MVC 1.0 [ 13 ]
2009年12月16日ASP.NET MVC 2 RC [ 14 ]
2010年2月4日ASP.NET MVC 2 RC 2 [ 15 ]
2010年3月10日ASP.NET MVC 2 [ 16 ]
2010年10月6日ASP.NET MVC 3ベータ版[ 17 ]
2010年11月9日ASP.NET MVC 3 RC [ 17 ]
2010年12月10日ASP.NET MVC 3 RC2 [ 18 ]
2011年1月13日ASP.NET MVC 3 [ 19 ]
2011年9月20日ASP.NET MVC 4 開発者プレビュー[ 20 ]
2012年2月15日ASP.NET MVC 4ベータ版[ 21 ]
2012年5月31日ASP.NET MVC 4 RC [ 22 ]
2012年8月15日ASP.NET MVC 4 [ 23 ]
2013年5月30日ASP.NET MVC 4 4.0.30506.0 [ 24 ]
2013年6月26日ASP.NET MVC 5 プレビュー[ 25 ]
2013年8月23日ASP.NET MVC 5 RC1 [ 26 ]
2013年10月17日ASP.NET MVC 5 [ 26 ]
2014年1月17日ASP.NET MVC 5.1 [ 26 ]
2014年2月10日ASP.NET MVC 5.1.1 [ 26 ]
2014年4月4日ASP.NET MVC 5.1.2 [ 26 ]
2014年6月22日ASP.NET MVC 5.1.3 [ 26 ]
2014年7月1日ASP.NET MVC 5.2.0 [ 26 ]
2014年8月28日ASP.NET MVC 5.2.2 [ 26 ]
2015年2月9日ASP.NET MVC 5.2.3 [ 26 ]
2018年2月12日ASP.NET MVC 5.2.4 [ 27 ]
2018年5月2日ASP.NET MVC 5.2.5 [ 28 ]
2018年5月11日ASP.NET MVC 5.2.6 [ 26 ]
2018年11月29日ASP.NET MVC 5.2.7 [ 26 ]
2022年4月12日ASP.NET MVC 5.2.8 [ 26 ]
2022年5月31日ASP.NET MVC 5.2.9 [ 26 ]
2023年10月23日 ASP.NET MVC 5.3.0 (最新)

プロジェクト構造

  • 📁 アプリケーション
    • 📁 コントローラー
      • 🗎 ペットコントローラー.cs
    • 📁 モデル
      • 🗎 PetViewModel.cs
    • 📁 ビュー
      • 📁 ペット
        • 🗎 .cshtml を作成する
        • 🗎 削除.cshtml
        • 🗎 編集.cshtml
        • 🗎 インデックス.cshtml

エンジンを表示

ASP.NET MVC 3 および MVC 4 フレームワークで使用されるビューエンジンは、Razorと Web フォームです。[ 29 ] [ 30 ]どちらのビューエンジンも MVC 3 フレームワークの一部です。デフォルトでは、MVC フレームワークのビューエンジンは Razor.cshtml.vbhtml、または Web フォーム.aspxページを使用して、データが構成されるユーザーインターフェイスページのレイアウトを設計します。ただし、異なるビューエンジンを使用することもできます。[ 31 ]さらに、デフォルトの ASP.NET Web フォームポストバックモデルではなく、すべてのインタラクションは ASP.NETルーティングメカニズムを使用してコントローラーにルーティングされます。ビューは異なるURLにマップできます。[ 7 ]

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

  • MVCContribライブラリには、Brail、NDjango、NHaml、NVelocity、SharpTiles、Spark、StringTemplate、XSLTの8つの代替ビューエンジンが含まれています。[ 32 ]
    • StringTemplateビューエンジンは、JavaテンプレートエンジンであるStringTemplateの.NETポートを利用しています。[ 33 ]
    • SparkはASP.NET MVC(およびCastle Project MonoRail)フレームワーク用のビューエンジンです。[ 34 ]
    • NDjangoは、Djangoウェブフレームワークのテンプレート言語を.NETに移植したものです。F#で記述されており、完全なIntellisenseサポートを含むVisual Studio拡張機能が付属しています。[ 35 ]
  • Naked Objects for .NET は、ASP.NET MVC を使用したネイキッド オブジェクトパターンの実装です。

参照

参考文献

  1. ^ 「Nuget パッケージ Microsoft.AspNet.Mvc」 。 2025年1月10日閲覧
  2. ^ 「MVC リリース」。Microsoft ASP.NET 公式サイト2016年5月18日閲覧。
  3. ^ Rick Anderson. 「ASP.NET MVC 3 (VB) 入門」 .公式サイト Microsoft ASP.NET サイト. 2015年1月17日閲覧
  4. ^ 「.NET 5の紹介」 2019年5月6日。
  5. ^ 「Stack Overflow は何で構築されたのか?」 2008年9月21日。
  6. ^ 「ASP.NET MVC を使用して作成されたトップ 10 の Web サイト - DZone Web Dev」
  7. ^ a b Scott Guthrie (2007年10月15日). 「ASP.NET MVC Framework」 . 2007年10月22日時点のオリジナルよりアーカイブ2007年10月23日閲覧。
  8. ^ Scott Guthrie (2009年4月2日). 「ASP.NET mvc 1.0 Source Released」 . 2009年4月3日時点のオリジナルよりアーカイブ。 2009年4月2日閲覧
  9. ^ Koirala, Shivprasad (2014年9月27日). 「WebフォームとMVCのパフォーマンス比較(25ユーザー負荷テスト)」 . codeproject . 2014年9月27日閲覧
  10. ^ "ASP.NET MVC" . aspnet4.com . 2014年4月4日時点のオリジナルよりアーカイブ2015年1月17日閲覧。
  11. ^ Scott Guthrie (2012年3月28日). 「ASP.NET MVC、Web API、Razor、そしてオープンソース」 . 2012年3月29日閲覧
  12. ^ Scott Hanselman. 「ASP.NET MVC 4、ASP.NET Web API、ASP.NET Web Pages v2 (Razor) がすべてオープンソース化され、貢献も得られるようになりました」 . 2012年3月29日閲覧
  13. ^ 「ASP.NET MVC 1.0 を公式 Microsoft ダウンロード センターからダウンロード」。Microsoft。2012年5月30日時点のオリジナルよりアーカイブ2015年1月17日閲覧。
  14. ^ Phil Haack (2009年12月16日). 「ASP.NET MVC 2 RC リリース」 . 2015年1月17日閲覧
  15. ^ Phil Haack (2010年2月4日). 「ASP.NET MVC 2 RC 2 リリース」 . 2015年1月17日閲覧
  16. ^ 「公式MicrosoftダウンロードセンターからASP.NET MVC 2 RTMをダウンロード」。Microsoft 。 2015年1月17日閲覧
  17. ^ a b「ASP.NET MVC 3」。The Official Microsoft ASP.NET Site 。 2015年1月17日閲覧
  18. ^ 「ASP.NET MVC 3 (リリース候補 2) の発表」。ScottGu のブログ。weblogs.asp.net。201012 月 11 日。20151 月 17 日閲覧
  19. ^ 「公式MicrosoftダウンロードセンターからASP.NET MVC 3 RTMをダウンロード」。Microsoft 。 2015年1月17日閲覧
  20. ^ "ASP.NET" . CodePlex . 2015年1月17日閲覧
  21. ^ 「ASP.NET MVC 4」。The Official Microsoft ASP.NET Site 。 2015年1月17日閲覧
  22. ^ 「MSDN ブログ」 . Microsoft . 2015年1月17日閲覧
  23. ^ 「MSDN ブログ」 . Microsoft . 2015年1月17日閲覧
  24. ^ 「ASP.NET and Web Tools 2012.2 リリースノート」。The Official Microsoft ASP.NET Site2015年1月10日時点のオリジナルよりアーカイブ。 2015年1月17日閲覧
  25. ^ Microsoft ASP.NET チーム. 「ASP.NET および Web ツール for Visual Studio 2013 リリースノート」 .公式サイト Microsoft ASP.NET サイト. 2015年1月17日閲覧
  26. ^ a b c d e f g h i j k l m "Microsoft ASP.NET MVC 5.2.2" . NuGet . 2015年1月17日閲覧
  27. ^ 「ASP.NET MVC 5.2.4、Web API 5.2.4、Web Pages 3.2.4 の発表」。Microsoft。2018年2月12日。 2018年3月14日閲覧
  28. ^ 「ASP.NET MVC 5.2.5、Web API 5.2.5、Web Pages 3.2.5 の発表」。Microsoft。2018年5月2日。 2018年5月4日閲覧
  29. ^ 「ScottGu のブログ - ASP.NET の新しいビュー エンジン「Razor」の紹介」。asp.net。20107 月 3 日。
  30. ^ 「ASP.NET MVC 3」公式サイトMicrosoft ASP.NETサイト。2023年6月15日。
  31. ^ 「Scott HanselmanのASP.NET MVC Preview 2スクリーンキャストチュートリアル」2008年10月29日時点のオリジナルよりアーカイブ2008年10月13日閲覧。
  32. ^ MVCコントリビュート
  33. ^ "string-template-view-engine-mvc - StringTemplate 用の ASP.Net MVC ViewEngine - Google プロジェクト ホスティング" . google.com .
  34. ^ 「Spark View Engine」。CodePlex 。2018年111日時点のオリジナルよりアーカイブ2013年3月15日閲覧。
  35. ^ 「ndjango - F# 言語使用した、.NET プラットフォーム上の Django テンプレート言語の実装。 - Google プロジェクト ホスティング」。google.com

さらに読む

  • Jon Galloway、Phil Haack、Brad Wilson、K. Scott Allen著『Professional ASP.NET MVC 3』、Wrox、2011年、ISBN 1-118-07658-3
  • Jeffrey Palermo、Jimmy Bogard、Eric Hexter、Matthew Hinze、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』第2版、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
  • アルノー・ウェイル『Learn ASP.NET MVC』、2015年、ISBN 1-32648303-X
  • Andrew Lock著『ASP.NET Core in Action』Manning Publications、2018年、ISBN 978-1617-29461-7