1つのアセンブリにいくつかのASP.NETマスターページがあります。これらのマスターページは、最初のアセンブリへの参照を持つ他のアセンブリにあるWebFormページで使用する必要があります。私はこれを行う方法を理解できないようです。
私がこれを行うことができる良い方法はありますか?
きれいな解決策が存在しない場合は、ハッキングの可能性についても聞きたいですか?
1つのアセンブリにいくつかのASP.NETマスターページがあります。これらのマスターページは、最初のアセンブリへの参照を持つ他のアセンブリにあるWebFormページで使用する必要があります。私はこれを行う方法を理解できないようです。
私がこれを行うことができる良い方法はありますか?
きれいな解決策が存在しない場合は、ハッキングの可能性についても聞きたいですか?
マスターページはユーザーコントロールに基づいているため、アプリケーション間で共有することはできません。
とは言うものの、Dan Wahlinには、彼のブログにリストされている特定の制限を回避する方法があります。
Dan WahlinによるIISアプリケーション間でマスターページを共有すると、いくつかのアイデアが得られます。
また、スコットアレンによるこの優れた記事をチェックしてください。マスターページの共有については、最後のセクションを確認してください。
この問題に対する明確な解決策はありません。
あなたができることは、それを別のWebアプリケーションプロジェクトに入れて、それをプリコンパイルすることです。次に、プリコンパイルされたdllを取得し、アプリで参照できる単一のdllにILMergeします。
参照する実際のマスターページには、MyMasterPage_aweknkのようなクラス名が付いているので、リフレクターで調べてください。「MyMasterPage」のように見えるクラスは、実際には単なるコードビハインドです。
それは本当に嫌ですが、複数のアプリケーションでユーザーコントロールを再利用するために私たちが行ったことです。