2016-07-11 5 views
2

まずは、これは今日非常にポピュラーなトピックで、この質問は何度も何度も尋ねられます。ASP.net WebフォームとAsp.net MVCセキュリティ

しかし、ここで私はasp.net MVCがウェブフォームよりも優れていることは非常に明白なので、どちらが良いかを尋ねていません。

ここでの質問は、すでに書かれているasp.net Webフォームとは関係がありません。小さくても大きくもないので、中サイズと呼ぶことができます。

asp.net MVCでそのようなアプリケーションを完全に書き直すのは本当に必要ですか? 私たちが集中している主なものはセキュリティです。

MVCがパフォーマンスの点でウェブフォームよりも優れている場合は、少しだけ大きな問題にはなりません。しかし、Webフォームよりセキュリティの点で優れている場合は、少しでも、それは本当に重要です。

これは私が知りたいことです:既に書かれたWebフォームアプリケーションをMVCで書き直すには、多くの時間とコストを浪費するというセキュリティ上の利点はありますか?

+1

どのような種類のセキュリティですか?レコードについては、WebフォームアプリケーションにASP.NET IDを追加することができます。http://www.asp.net/identity/overview/getting-started/adding-aspnet-identity-to-an-empty-or-existing- web-forms-project –

+1

実際にはWebFormsセキュリティモデルとMVCセキュリティモデル自体はありません。すべてasp.netであり、セキュリティ原則をどちらかに引き出すことができます(例:クレームベースの認証、メンバーシッププロバイダ、oauthなど)。 )。 これは、https://msdn.microsoft.com/en-us/library/330a99hc.aspx – LDJ

答えて

1

MVCがWebフォームとアプリケーションに対して持っているコントロールより多くの利点を残して、ビジネスパートについて話をするならば。

  1. 開発者が完全に制御できるはるかに安定したフレームワークを使用している将来の証明アプリケーションが欲しいですか?
  2. このアプリケーションを実行できるまで実行しますか?

は、あなたのアプリケーションは、進化しようとしているバージョンと新しいバージョン、機能を持ち、などあなたは大きな変更(おそらくいくつかのマイナーなアップグレードやバグ修正を)持っていない静的なアプリケーションを持っている場合、[はい、あなたはしかし 必要がある場合投資は価値がない。

両方の技術で同じセキュリティを達成できるため、セキュリティは問題ではありません。

2

MVCのうまく行われたWebフォームコードを書き換える際に "多くの時間とお金"を無駄にすることはまったく意味がありません。コードを書き直すには、魅力的な理由が必要です。

MVCは「ウェブフォームよりも明らかに優れている」と誰が言ったのですか?パフォーマンスやセキュリティの面で優れているわけではありません。それが思考の中でより良いことは、デザインです。

MVCの設計は、開発者がビジネスロジックをプレゼンテーションから離れるようにすることを奨励しています。プレゼンテーションのロジックをWebフォームでも動かすことはできますが、そのデザインはそれほど多くの努力を必要とするため、これを推奨しません。もう1つの方法も当てはまりますが、MVCのビューにロジックを追加して目的を破る開発者もいます。もう1つの問題は、MVCがビジネスとデータレイヤの分離を促進し、開発者に完全に任せていないことです。そのため、一部の開発者はすべてのロジックをコントローラに保持します。

ロジックをプレゼンテーションから分離することで、コードのテストがはるかに簡単になり、UIデザイナーとアプリケーション開発者の間の分割がはるかに簡単になります。

これらはすべて、ほとんどのプロジェクトにとって非常に重要ですが、重要な問題なしに仕事をしているコードを書き換える理由が十分ではありません。新しいプロジェクトについては、それは確かに考慮する価値がある。

MVCにはいくつかの利点がありますが、私の意見では、上記の2つが最も重要です。また、Webフォームにはいくつかの利点があり、特定のアプリケーションを開発する方が高速になる可能性があるため、MVCの利点はウェブフォームよりも絶対に優れているとは言えませんが、MVCのメリットは、 、 私の考えでは。

+0

(MVCは「Webフォームよりもはるかに優れている」と言っていますか?)パフォーマンスやセキュリティの面で優れているわけではありません。 )... ...記事が多すぎます...特に応答時間と帯域幅消費の面で優れていると説明しているこの記事:http://www.codeproject.com/articles/866143/Learn -MVC-project-in-day-Day – user6218508

+0

その記事や他の記事に言及されているだけで、それを真実にする必要はありません。この記事では、Webフォームのパフォーマンスを遅くするもの、主にサーバーコントロールと 'viewstate'によって生成されるときどき冗長なHTMLについて言及しています。しかし、良い開発者だが、サーバーコントロールをいつ使うべきか正確に知っていて、必要なときだけ 'viewstate'を使うべきです。このように適切に使用すると、MVCとWebフォームの違いはほとんどありません。 MVCは非常に基本的な "サーバーコントロール"を持っているので、HTML/CSSを吸う開発者は非常に悪いコードを書くので、Webフォームよりもはるかに悪くなります。 –

関連する問題