2

同じ Web サイト内の MVC + 従来の Web フォーム

、MVC と従来の Web フォームを混在させることが可能かどうか疑問に思っています (コードが不均一になっても、既に行ったことを再実装したくありません...)

元の質問

ASP.NET (および一般的な Web プログラミング) の理解が深まるほど、ASP.NET のページ ライフサイクルとその winforms のようなパラダイムが嫌いになります。独自のハンドラーで記述するか、せいぜい、データ バインドされたコントロールを使用せずに単純な .aspx テンプレートを使用することで、より短い時間でより良い結果が得られるとますます確信しています。
何かを行う ASP.NET の方法を学ぶたびに、時間を無駄にしたと感じ、車輪を再発明することになります。

System.Web.UI.* コントロールを上手に使用していますか?
ページのライフサイクルに混乱していませんか?
各ページに SQLDataSource を配置すると、保守できないコードが生成されるように感じませんか?

アップデート

そのように感じたのは私だけだとは信じられませんでしたが、今では自分が正しかったことを知っています. MVCに関するいくつかのビデオを見ていますが、探していたものとまったく同じように見えます。明日、取り付けて試してみます。

4

6 に答える 6

4

ASP.NET MVCは、まさにあなたのように感じる人々のために作成されました :)

はい、 WebForms と ASP.NET MVCを混在させることは完全に可能です。

于 2009-06-20T00:47:06.143 に答える
1

System.Web.UI.* コントロールを上手に使用していますか?

もう違います。

ページのライフサイクルに混乱していませんか?

慣れている。特に、カスタム/ユーザー コントロールが混在している場合。

各ページに SQLDataSource を配置すると、保守できないコードが生成されるように感じませんか?

確かにそうですが、SqlDataSource の使用を強制する人は誰もいません。私は 3 層アーキテクチャの ObjectDataSource を好みます。

MVC の道を行くと、がっかりすることがあります。ページングやソートなどの明らかなものは再発明する必要があります (オープンソースのものは通常、すべてのニーズに適合するとは限りません)。さらに重要なことは、MVC プロジェクトは、自分が何をしているのかわからず、よく整理されていないと、簡単に混乱する可能性があるということです。しかし、専門家の手に渡れば、MVC は核兵器です。

気をつけて。:)

于 2009-06-20T08:21:13.347 に答える
1

はい、一部の人々は、WebForms である「リーキー」と呼ばれることが多い抽象化を嫌います。これは、ステートレス ブラウザ リクエストをステートフル フォーム アプリケーションに似た野獣に変えようとしますが、常に成功するとは限らず、通常はうまくいきません (viewstate の非表示フィールドが大きい、戻るボタンの機能が壊れている、単純なナビゲーションのための JavaScript に依存している)。

これが、Microsoft が MVC 実装を開発した大きな理由です。いくつかのヘルパー (実際にはヘルパーと呼ばれます) を維持しながら、抽象化なしで「ネイティブ」な Web インターフェイスを提供します。MVC が登場する前は、ASP.NET で独自の非 Web フォーム アプリケーションを作成することもできましたが、それはより多くの作業を意味していました (私は個人的に、HTTPHandler 上に構築された独自の自作システムを使用して、RESTful URL と非 Web フォーム インタラクションを約 1 時間提供していました)。 MVC が公式の代替案を提供する 1 年前)

于 2009-06-20T00:49:18.323 に答える