2

現在、asp.net Web サイトで作業しており、Web フォームを使用しています。サーバー コントロール (グリッド ビュー、チャートなど) を使用する前に asp.net Web サイトを構築した経験があり、遅いと感じています。すべてのコントロール(グリッド、チャート、ツリーなど)、少なくとも必要なものを備えたいくつかのjqueryスイートを試しましたが、速度とユーザーエクスペリエンスの向上により、主に気に入っています。私のウェブサイトでは、asp サーバー コントロールを使用せず、代わりにプレーンな html と jquery プラグインを使用する予定です。

asp.net サーバー コントロールを使用せず、ほとんどの処理をクライアント側に移動するのは良い選択ですか?

クライアント ブラウザで JavaScript がオフになっていると、サイトがまったく機能しないことはわかっています。

しかし、それ以外に、モバイルアプリケーションの開発および/または MVC の実装に関する将来の計画を考慮して、どのような問題に直面する可能性がありますか?

すべてが最終的にhtmlとしてレンダリングされ、jquery ajaxリクエストを使用してデータを取得/投稿できる場合、なぜasp.netサーバーコントロールを使用する必要があるのですか?

どんな助けでも大歓迎です。

4

5 に答える 5

1

完全な答えではありませんが、私は 2 セントを提供したいと思いました。Web サイトで .NET を使用している場合、私の謙虚な意見では、MVC を使用する必要があります。MVC を使用すると、ビジネス レイヤーと UI をより適切に分離できます。

xml または json 応答をサポートするコントローラーを作成することで、API のサポートを簡単に作成できます。これにより、jquery、extjs などのフレームワークを使用してリッチなユーザー インターフェイスを作成し、同じ API でモバイルもサポートできるようになります。 .

于 2012-04-26T17:56:07.410 に答える
1

ASP.NET コントロールを使用していない場合は、実際には ASP.NET Web フォームを使用していません。コントロールは、クライアント側とサーバー側の相互作用を提供するものです。

あなたが述べていることでは、MVCが最初から進むべき道のように思えます。デフォルトのプロジェクトにはすでに jQuery が含まれており、MVC コントロールがないため、単に HTML と Javascript で GET/POST をコントローラーに渡します。

また、JSON のサポートにより、jQuery とのデータの非常に優れた、クリーンで軽い相互作用が可能になります。

于 2012-04-26T17:54:54.543 に答える
0

私は約1年前にあなたの状況にあり、あなたと同じ結論に達しました.

さらに進むと、aspx ページさえ必​​要ないことに気付きました。リテラル (私が使用する唯一の asp.net コントロール) を使用してページの読み込み時に json データを挿入するマスターページを使用して HTML5 ページを構築し、WCF を使用して実装します。 jquery ajaxを使用してデータをやり取りするサービス指向アーキテクチャ。

于 2012-04-26T18:00:44.147 に答える
0

Microsoft MVC は好きではありませんが、それは私だけです。

MVC は技術ではなくパターンであるため、好きなように実装できます。

Microsoft の MVC 実装を学びたくなくても WebForms を使用するが、MVC スタイルを使用してそれを行う場合は、次のようにアプリケーションを開発することを検討してください。

VIEW: ASP.NET ページ (サーバー側コントロールなし)buildsページ

コントローラー: jQuery / Javascript callsGeneric Handler ファイル (ASHX) およびreturnsJSON

MODEL: ASHXcallsモデル (カスタム クラス)

このように、MVC パターンを使用していますが、Microsoft の実装に縛られることはありません。コントローラー レベルは ASHX ファイルを介して公開されるため、同じコントローラーを使用して Web サイトとモバイル アプリケーションの両方を開発できます。 .

それが理にかなっていることを願っています。

明らかに、セキュリティやASHXファイルへのアクセスなどを処理する必要があります.

于 2012-04-26T18:02:59.453 に答える
0

まず、「サーバー コントロール」とサーバー側は区別する価値があると思います。

  • HTML/JSですべてのフロントエンドを実行できることを確認してください
  • ブラウザの外部にデータソースがある場合、少なくとも「サーバー側」と通信する必要があります。これは「サーバーコントロール」とは何の関係もありません
  • 検証/セキュリティ - クライアント側ですべてを行うことはできません。クライアント側のすべてが閲覧/改ざん可能
  • すでに回答されているように、MVC にはコントロールは必要ありません。ASP.Net MVC でコントロールを使用できることを明確にするだけです。コア コンセプトは、そのすべての ASP.Netをカバーすることであり、言語 (VB.Net、C#) でさえ、好きなように組み合わせることができます。

Web フォームにはまだその場所があり、jQuery などを妨げるものは何もありません。

「遅い」は多くのことに依存しています。Web フォーム (テクノロジー)責めるつもりはまったくありません。どんな技術であっても、コードの間違いは起こります。

于 2012-04-26T18:05:08.190 に答える