6

私は Ruby on Rails から来ており、C# Web アプリケーションを作成する必要があります。現在、ASP.NET MVC と MonoRail を検討しています。私が見つけた比較のほとんどは、ASP.NET MVC がまだ新しい 2008 年から 2009 年のものであり、MVC に対するほとんどのポイントは、MonoRail ほど洗練されておらず、生々しすぎるということでした。

それから数年が経ち、Microsoft は ASP.NET MVC に関して多くの作業を行いました。2 つのフレームワークの最新バージョンは、互いにどのように比較されますか?

4

2 に答える 2

3

私は約 4 年前に MonoRail を評価しましたが、今日の mvc3 と比較すると、これらが主な違いです (imho)

  • MVC のデフォルトとしての Razor テンプレート エンジン。Monorail はデフォルトで NVelocity に設定されていますが、これを使用するのは楽しいことです。キャッスルプロジェクトのウェブサイトをチェックしたところ、モノレールをアップグレードする計画があります...
  • MVC3 に関する非常に多くのドキュメントがありますが、今日のように (私のせいかもしれませんが)、モノレールのサイトにオンライン ドキュメントが見つかりません。
  • Areas、Partials、Razor は VS2010 に非常に統合されています。気に入らない場合は、別のテンプレート エンジンをプラグインして使用できます。
  • MVC3 は Ajax/Jquery の統合が改善されており、控えめなフォーム検証が行われています
于 2012-08-06T10:03:38.753 に答える
2

私はここ数年、両方のフレームワークを使用してきました。最初は生っぽさを感じたので、mvcが出てきたときはモノレールにこだわりました。IMHO MVC3 は現在、モノレール 2 よりも成熟しており、サポートが向上し、ドキュメントが増え、新しいバージョンが定期的にリリースされています。

  • Razor は nvelocity よりも強力で、nvelocity に欠けている優れた Visual Studio サポートを備えています。
  • Monorail ビューはコンパイルされていませんが、MVC3 ビューはコンパイルされています。開発中は、ビューを変更してすぐに変更できると便利な場合があります。一方、コンパイルされたビューは高速です。
  • モノレールはしばらく新しいバージョンがなく、停滞しているようです。モノレール3は工事中です。
  • MVC3 は、拡張メソッドとしてヘルパーもサポートするようになりましたが、Razor ビューで直接宣言することもできます。モノレールは、ヘルパー クラスの静的メソッドとしてのみヘルパーをサポートします。
  • MVC3 のルーティング サポートははるかに優れています。
  • MVC3 には、フィルターの IC サポートも含まれるようになりました。
  • MVC3 はメソッド レベルへのフィルターの適用をサポートしますが、モノレールはコントローラー レベルでのみフィルターをサポートします。
  • MVC3 はそのままでは Ioc をサポートしていませんが、代わりに IDependencyResolver を使用できます。これについては、多くの解決策を見つけることができます。
  • MVC3 は、CSRF 攻撃を強力にサポートしています。モノレールでは、ヘルパーとフィルターの組み合わせを使用して、これを独自に開発する必要があります。
  • MVC3 はビューのプリコンパイルをサポートしているため、サイトを公開する前にエラーを最小限に抑えることができます。ただし、モノレールの nvelocity ビューでは解釈されないため、これを行うことはできません。
  • MVC3 html は、任意の文字列を自動的にエンコードします。モノレールでは、このために常にヘルパーを呼び出す必要があります。

モノレール 3 が登場したら、彼らが何をサポートするかを見るのは興味深いでしょう。ハメットによるモノレール 3 の価値提案であるhttps://docs.google.com/document/d/1AkeeJPh8kZQKtnHN3RDR3v-UfG7zt9wCL0jMiualUqI/edit?hl=en&authkey=CN7U99YN&pli=1をご覧ください。

于 2012-08-20T21:11:32.223 に答える