1

私は最近、Microsoft が Web フォームを開発するために提供しているすべての選択肢に不満を感じています。Sharepoint、Sharepoint なしの Infopath、ASP.NET Web フォーム (ランタイムごとに異なるコントロール)、Web フォームなしの ASP.NET、ASP.NET MVC フレームワーク、Silverlight、および WCF があります。レンダリング技術とデータバインディング技術はさておき、データベースとの間でデータをやり取りする方法はいくつかあります (DataSet、LINQ、SqlDataControls など)。非常に古いテクノロジ (FoxPro が Web フロント エンドを取得したことはありますか) や、Microsoft Labs のロールアウトの過程で非常に新しいものを見逃していることは確かです。

ASP.NET Web フォームと DataSet の使用をやめたい場合、データ ドリブン フォームに今すぐ移行する最善の方法は何ですか? あなたのプログラミング時間に良い価値をもたらしたものは何でしたか? LINQ to Entities と新しい MVC フレームワークを試してみたくなりましたが、これらすべての新しいテクノロジについて十分に理解していないため、その価値がどこにあるのかを選択できません。

4

4 に答える 4

2

これまで何度も言われてきましたが、「何がベスト」というものはありません。これらのツールのいずれかが最適である場合、残りは存在しません。「データ ドリブン フォーム」は、かなり広範な要件ステートメントです。

それらはすべて、他の分野で長所と短所がありますが、すべて「データ駆動型フォーム」が可能です。MVC は低レベルのフォームです。すべての HTML とフォーム処理を自分で行う必要がありますが、HTTP を直接処理することにはるかに近いため、多くの人が軽量で簡単に操作できると感じています。

Silverlight には、少数の .Net ライブラリ セットを使用し、ユーザーがブラウザー プラグインをインストールする必要があるという欠点があります。

WCF はフォームの背後にあるデータを提供し、パブリック API を開くか、他の方法でデータを使用することを計画している場合に非常に適しています。

それぞれのテクノロジーを 1 時間でも調べてみると、どれが自分のニーズに合っているかをよりよく理解できるでしょう。

于 2009-07-24T18:38:16.687 に答える
1

ASP.NETを使用している場合(通常のWebサイトをコーディングしようとすると、少し「困惑」しているように感じます)、MicrosoftのMVCフレームワークを試すことを強くお勧めします。新鮮な空気の息吹です!

労働時間あたりのPOVの値から、それは実際に何をしているかに依存します。多くのWebフレームワークを試したとは言えないので、私は最良の指標ではないかもしれませんが、MVCを使用すると、すべてが自然に適切に機能し、今のところそれを維持できてうれしいです。

于 2009-07-24T18:22:00.650 に答える
1

ASP.Net Forms は「逃げる」必要があるとは思いません。

MVC には確かに有用性があり、適切な場合には確かに多くのことが簡単になります。

ただし、適切に設計された ASP.Net Forms アプリは、特定の状況では同等またはそれ以上に役立つ場合があります。

私自身、公開サイトには MVC を使用し、内部/管理用にはフォームを使用しています。

于 2009-07-24T18:26:53.573 に答える
0

データ量の多いページの場合、Web フォームは完全に適切なソリューションだと思います。MVC ではレイヤーの分離が導入されているため、データの収集とルーティングを分離する必要があるため、開発が難しくなる可能性があります。

MVC はインタラクティブな Web ページ (Web 2.0 っぽい) を作成するのに適していると思いますが、単純に多数のレポートを表示したり、ユーザーにフォームに入力させたりする場合は、あまり活用する必要はありません。

別の方法として、Repeater や DataGrid、さらには DataSet などの組み込みコントロールを使用して、より少ないコードを記述してみてください。データ フローの核心に迫ると、よりスマートなコードを記述して生産性を高めることができます。必ずしもコードを少なくする必要はありません。

最終的に、まさに必要なことを実行する独自の「フレームワーク」をまとめたことがわかりました。カスタム コントロールから直接 HTML を取得します。これらのコントロールは、カスタム データベース アクセス クラスへのプロシージャ コールによって供給されるデータをフォーマットするだけです。はい、これらはすべて Web フォームまたは http ハンドラー (ASHX) と少しの jQuery で提供されます。

魅力的ではありませんが、抽象的なソフトウェア設計パターンではなく、自分のビジネスに合わせて微調整されたコードを開発することで、仕事をより速く、より良く行うことができます。

于 2009-07-24T18:49:57.583 に答える