0

これがばかげた質問または明白な質問である場合は申し訳ありませんが、私は1週間の大部分を調査に費やしており、MVC 4とRazorが何であるか、およびそれらが何を意図しているのかを説明するリソースを実際に見つけることができません。 Web開発で行います。Webサイトへのリンクや、MVC 4を説明していない本の名前でさえ、私が使用したことのない他のテクノロジーを参照して、必ずしも詳細な説明を求めているわけではありません。MSDNから卒業論文まで、あらゆるものに関する記事、記事、チュートリアルを調べましたが、わかりません。

MVCのデザインパターンはわかっていますが、正解が得られない主な点の1つは、MVCパターンとMVC4フレームワークの違いです。Web開発者として、フレームワークを変更または使用する必要がありますか、それとも「邪魔にならない」(別のSO投稿を引用する)ことになっているものですか?VSとによって生成されるものですか?私は触れる必要はありませんか?

繰り返しになりますが、これが明らかな場合は申し訳ありません。おそらく、これを実際よりも複雑にしようとしています。私が探していたのは、それ以上矛盾したり複雑にしたりしない具体的な例を使った簡単な答えです。

お願いします...私はここで私の知恵の終わりにいます。私の最後の質問は明らかに曖昧すぎて投票されて閉じられたので、より具体的にしようとしましたが、私の問題の一部は正しい質問が何であるかです。明確にすることができることがあれば教えてください。

4

2 に答える 2

2

私は確かにあなたが現在のように見える以上にあなたを落胆させたくはありませんが、私の意見では、MVCにすでに存在する膨大な量の資料の頭または尾を作ることができない場合は、おそらくあなたはまだ準備ができていません。それは問題ありません。実際、MicrosoftはMVCが複雑であることを認識しています。そのため、ASP.NET Webページフレームワーク(Razor構文を生み出したもの)を導入しました。

私のアドバイスは、リンクをたどってWebMatrixをダウンロードすることです。次に、いくつかのWebページのチュートリアルに従います。そうすれば、当面はMVCについてあまり心配することなく、Razorに頭を悩ませることができます。

ちなみに、ASP.NET MVCは、MVCパターンに基づいてWebアプリケーションを構築できるWeb開発フレームワークです。フレームワークを利用するには、MVCがどのように機能するかを理解する必要があります。モデルとは何か、ビューとは何か、そしてコントローラーが全体で果たす役割を理解する必要があります。

フレームワーク自体はMVCの例ではありません。

Razorは、C#(またはVB)とHTMLを組み合わせて、MVCのビューまたはWebページフレームワークのページに動的コンテンツを出力できるようにするテンプレート構文です。

于 2013-03-23T21:04:03.567 に答える
2

紛らわしいように思えるかもしれませんが、あなたは物事を複雑にしすぎているように思えます。

単純な問題は、MVCがデザインパターンであるということです。つまり、それは抽象的なものです..ある種の哲学です。具体的なことではありません。デザインパターンは、パターンがどのように機能するかを説明するだけであり、サンプル実装を提供する場合もありますが、一般に、その実装はユーザーに任されています。

ASP.NET MVC(いずれかのバージョン)は、MVCパターンをベースとして使用する特定のアプリケーションフレームワークです。言い換えれば、これはMVCデザインパターンの具体的な実装です。

実際、ASP.NET MVCの実装は、MVCデザインパターンの「真の」実装ではありません。これは、Webベースのモデルで機能させるために特定の妥協が必要なためです。つまり、実際には「MVCデザインパターンに触発された」ものです。

あなたは物事を考えすぎています。ASP.NET MVCは、MVCデザインパターンを実装するフレームワークライブラリであることを受け入れてください。

Razorに関しては、それは単なるテンプレートライブラリです。つまり、ページレイアウトをテキストとして定義し、特定の場所(プレースホルダー)に値を挿入することができます。また、非常に単純な場合を除いて、MVCでは推奨されていませんが、テンプレートのレンダリングプロセス中にコードを実行することもできます。

RazorはASP.NETWebPagesテクノロジでも使用されます。そのような場合、すべてのコードがテンプレート自体のコードブロックに存在するという点で、PHPまたは従来のaspに似ている傾向があります。ASP.NETとWebPagesはどちらもRazorテンプレートエンジン(ビューエンジンとも呼ばれます)を使用しますが、使用方法は異なります。

于 2013-03-24T08:53:12.163 に答える