19

私はASP.NETに関しては完全な初心者ですが、最終的にクラウドでホストされるSQLサーバーと通信するWebアプリケーションを構築するために、ASP.NETについて学びたいと思っています。ただし、ASP.NETWebアプリケーションとASP.NETMVC2 Webアプリケーション(Visual Studio 2010)の違いを説明する情報が見つからないため、どこから始めればよいかわかりません。誰かが私に簡単な説明/概要を教えてくれるので、私が従うべきチュートリアルを決めることができますか?

ありがとう

4

8 に答える 8

30

ASP.NETはWebプラットフォームです。これは、IIS(Webサーバー)の上にあるレイヤーを提供し、WebアプリケーションとWebサービスの作成を容易にします。ASP.NET MVCは、特にWebアプリケーションを構築するためのフレームワークです。ASP.NETの上に配置され、ASP.NETによって提供されるAPIを使用します。ASP.NET Webフォームは、特にWebアプリケーションを構築するための別のフレームワークであり、新しいASP.NET Web APIは、Webサービスを構築するためのプラットフォームです。

于 2012-08-29T14:27:14.493 に答える
13

ASP.NETは、最も基本的なレベルで、VB、C#などで活用できるイベント駆動型プログラミングモデル内でサーバー側の「コントロール」と組み合わせた一般的なHTMLマークアップを提供する手段を提供します。サイトのページを定義し、コントロールをドロップして、すべてが機能するようにプログラムによる配管を提供します。

ASP.NET MVCは、 Model-View-Controllerアーキテクチャパターンに基づくアプリケーションフレームワークです。これは、Webサイトを実装する特定の方法の「定型」フレームワークと見なされる可能性があり、ページが「コントローラー」として機能し、アプリケーションの適切なページに要求をディスパッチします。アイデアは、アプリケーションのさまざまな要素(ビジネスルール、プレゼンテーションルールなど)を「パーティション化」することです。

前者は、多かれ少なかれゼロから設計したサイトアーキテクチャを実装するための「白紙の状態」と考えてください。MVCは、それが理にかなっている場合、アプリケーションアクセスの事前に決定された「パターン」を中心にサイトを設計するためのメカニズムを提供します。確かに、それよりも技術的な詳細がありますが、それは質問の目的のためのニッケルツアーです。

幸運を!

于 2012-08-28T21:44:14.167 に答える
10

ASP.NET MVC2 Webアプリケーションは、非常に難しいため、パイプラインasp.netをモックすることなく、単体テストを容易にするためにMVCパターンに基づいています。コードグラフィックとコード機能を分離するために、CodeBehindにコードがありません。

MVCを使用すると、アプリケーションはビューから独立します。ビューを作成するテクノロジーを簡単に置き換えることができます。

この記事を読んでくださいそれは非常に興味深いです:http://msdn.microsoft.com/en-us/magazine/dd942833.aspx

于 2012-08-28T21:00:01.843 に答える
1

非常に優れた資料がここにあります http://www.webdevelopmenthelp.net/2013/10/Difference-between-ASP.NET-WebForm-And-ASP.NET-MVC.html

于 2013-12-15T10:57:35.857 に答える
0

VS10を使用している場合は、小さなASP.NET(Webフォーム)アプリケーションと小さなASP.NET MVC 2アプリケーションを作成し、それらの違いを調べます。それは学ぶための素晴らしい方法です。

于 2012-08-28T21:04:30.440 に答える
0

ASP.Net Webフォームと同様に、ASP.Net MVCは、Microsoft.netFrameworkでWebアプリケーションを構築するための開発モデルです。それらの主な違いは、ASP.netMVCがMVCアーキテクチャに基づいていることです。モデル、ビューコントローラーの3つの独立した層があり、相互に作用してHTML出力をレンダリングします。

主な違い

  1. Webフォームには、主にイベント駆動型モデルがあります。ページレベルのイベント(Page_load、pre render、page_initなど)とコントロールレベルのイベントがある場合。これはMVCには当てはまりません。リクエストのライフサイクルは比較的複雑です(HTML出力をレンダリングする前にリクエストがすべてのイベントを通過する必要があるため、なぜ複雑なのですか)

  2. Webフォームには、基本的に、UIコントロールとコードビハインドファイルを含むaspxページがあります。すべてのページレベルのイベントとコントロールレベルのイベントはここで処理されます。MVCビュー、モデル、コントローラーは独立して存在できます(関心の分離を明確にします)

  3. SOCを使用すると、View(design html)とコントローラー(ビジネスロジックの実装)に別々の開発者を配置できるため、開発が容易になります。

  4. この密結合の性質のため、Webフォームは単体テストには適していません。MVCでは、コントローラーレベルとアクションメソッドレベルの両方で単体テストを記述できます。ここでは、ビューに渡されるデータをモックし、ビュー名、モデルプロパティ、ヌルチェックなどのさまざまなプロパティのアクションメソッドからの結果をアサートできます。

  5. Webフォームでは、状態が完全に動作します。ASPXページのサーバーコントロールは、ビューステートを使用して、要求応答サイクル中にその状態を保持します。このビューステートはページ自体の内部に非表示のコントロールとして保存され、要求と応答のサイクル中に送信されるため、より重くなります。ビューステートがなく、MVCのステートレスな性質により、MVCはより軽量になります。したがって、リクエストのライフサイクルがはるかに高速になります。

于 2020-07-24T07:37:55.480 に答える
0

ASP.NETはWebプラットフォームです。Webサーバーの上にあるレイヤーを提供し、WebアプリケーションとWebサービスの作成を容易にします。ASP.NETは、特にWebアプリケーションを構築するためのフレームワークです。ASP.NETに属し、ASP.NETによって提供されるAPIを使用します。ASP.NET Webフォームは、特にWebアプリケーションを構築するための別のフレームワークであり、新しいASP.NET Web APIは、Webサービスを構築するためのプラットフォームです。

于 2020-07-27T12:08:28.147 に答える
-1

ASP.NETは2層アプリケーションであり、データベース用の個別のセクションはありません。MVCは、ビューとロジックが個別に保持される3層アプリケーションです。ASP.NETではフォームごとに.aspx1つのURLが生成されますが、MVCではURLはコントローラーとルーター構成に基づいて生成されます。

于 2019-04-26T06:01:33.347 に答える