多数のクライアントサイトに展開する新しいプロジェクトを開発しています。プロジェクトには、その「アクセスポイント」の1つとして、WebベースのGUIが含まれています。 Webインターフェースの速度はこのプロジェクトの優先事項であり、セキュリティに次ぐものです。
これまでは、Visual Studioで常に "Webサイト"を作成してきました。これにより、発行されると、システム内のページごとに1つのDLLと1つのaspxファイルが作成されます。ただし、実際に「Webアプリケーション」を作成して、すべてを1つのdllにコンパイルすることもできることは承知しています。
私には(実際のデータはなく、直感に基づく)、サイトを単一のdllとしてコンパイルすると、セキュリティと速度の両方(わずかでも)に優れているように思えます。
私たちが考慮すべき考慮事項は何ですか?また、適切な方法を選択するときに注意すべき明らかな落とし穴はありますか?
大規模なアプリケーションの場合は、ビジネスロジック(分割する場合はソフトウェア層)に自然な分割領域があり、独自のDLLに含めることができます。
コアWebサイト機能を単一のDLLに入れることができればいいのですが。展開の問題を緩和し、とにかく自然な単位です。 1ページあたり1つDLLページごとに非常に細かく見えます。
可能であれば、「懸念の分離」の概念を適用します。つまり、ビジネスロジックはdll、データアクセスレイヤーは別、UIは別のものにすることができます。
これは、ソースコードを紛失した場合に便利です。dllを逆コンパイルする方が簡単な場合があります。