差分
'''ASP.NET MVC'''とは、Webアプリケーション開発のためのフレームワークである。名称に(読み:えーえすぴーどっとねっと・えむぶいしー)とは、Webアプリケーションを開発するためのフレームワークである。名称に[[MVC]]とあるようにMVCパターンとなっている。
2012年3月27日に、[[Razor]]や[[JSON]]などの実装を含む[[ASP.NET MVC]]および関連ライブラリのほぼ全てがApache および関連ライブラリのほぼ全てが[[Apache License 2.0のもとで0]]のもとで[[オープンソース]]化され<ref>http://aspnetwebstack.codeplex.com/</ref>、翌日には[[Mono]]への取込が始まった<ref>https://github.com/mono/aspnetwebstack</ref>。
== ASP.NET と ASP.NET MVC ==
大事なことなのでもう一度言うが、[[ASP.NET MVC]]と[[ASP.NET]]はまったくの別物である。
ASP.NET(無印)とASP.NET MVCの唯一の共通点は、ASP.NET MVCで用いるデフォルトのビューエンジン([[PHP]]でいうSmarty、でいう[[Smarty]]、[[Ruby]]のeRubyの[[eRuby]]/erbに相当)で用いるテンプレートファイルの拡張子がaspxである点くらいである。拡張子は同じだが、ASPerbに相当)で用いるテンプレートファイルの[[拡張子]]がaspxである点くらいである。[[拡張子]]は同じだが、ASP.NET(無印)のaspxファイルは人間が直接触ることを想定していないのに対して、ASP.NET MVCでは至って普通のHTMLテンプレートファイルであり、本当に共通点は拡張子だけある。MVCでは至って普通のHTMLテンプレートファイルであり、本当に共通点は[[拡張子]]だけある。
しかもASP.NET MVC 3からは[[Razor]]という新型ビューエンジンが導入され、HTMLテンプレートファイルの拡張子も.cshtmlまたは.vbhtmlとなってしまったため、拡張子という共通点すら無くなった。
従来の[[ASP.NET]]では、Windowsアプリケーションに近い開発スタイルが取られており、[[HTML]]を気にせず、ビジュアル・デザイナーでGUIアプリケーションを作るような感じで開発を行うというものであった。逆を言えばHTMLは実行時に自動生成されるものであり、人間が直接編集するものではないという独特のシステムであった。
一方でWebアプリケーション開発で主力である[[PHP]]や[[Perl]]、[[Python]]の開発者からしたら、の開発者から見ると、[[HTML]]を触れないとか意味不明すぎて誰もが敬遠し、クソだクソだと口コミが広まった。を触れないとか意味不明すぎて誰もが敬遠し、また[[SEO]]的にも良くないなど、クソだクソだと口コミが広まった。
こうした批評をうけ、[[PHP]]とSmartyの組合せのようなシンプルなものを、装いも新たに実装したのがASPと[[Smarty]]の組合せのようなシンプルなものを、装いも新たに実装したのがASP.NET MVCである。
== Mono ==
=== ファイル名の大文字小文字 ===
== ルーティング ==
== マスターページ ==
{{stub}}
== その他 ==
*[[ASP.NET MVC/TwitterのOAuthで認証を行う]]
== ASP.NET MVCの主なバージョン ==
* [[MonoRail]] - [[ASP.NET]](無印)上に[[Ruby on Rails]]のActionPackっぽい独自[[MVC]]を実装しているオープンソースプロジェクト。
* [[MvcContrib]] - ASP.NET MVC向けの独自ライブラリ群を作っているオープンソースプロジェクト。主要メンバーには[[MonoRails]]の中の人もいる。
* [[xsp]] - [[ASP.NETおよびASP.NET MVCををLinuxやMac上で動かすための]]系のフレームワークを使ったウェブアプリをLinuxやMac上で動かすための[[Webサーバー]]。[[Java]]でいう[[Apache Tomcat]]のようなもの。
* [[mod_mono]] - [[xsp]]をApacheモジュール化したもの。
== 参考文献 ==
{{stub}}