1

ASP.NET が登場して以来、ASP.NET サイト内に簡単に展開できるライブラリ (ビュー + コード) を作成するための、すぐに使えるクリーンな方法はありませんでした。

したがって、次のようなソリューションがあるシナリオを考えると:

  • ASP.NET サイト
  • クラス ライブラリ

コントローラーまたはコード ビハインドに関する限り、対処するのは簡単です。後者はクラス ライブラリにコンパイルされるだけで、前者もクラス ライブラリの一部であり、Web アプリの規則によって簡単に検出できます。ビューの場合は、ascx、aspx、cshtml のいずれであっても、話は別です。私が知る限り、これらはオプションです:

  1. VirtualPathProvider を通じて提供される埋め込みビュー。ランタイム コンパイルは保持しますが、Web サイト内からビューを変更することはできませんが、利用可能なビューの場所のフォールバック チェーンにフックするように設定することはできます

  2. コンパイルされたビュー。これは基本的にコード ビハインド シナリオに要約されます。埋め込みビューについても同じことが言えると思います。

  3. ビュー ファイルをコピーするNuGet パッケージ。最も実現可能と思われますが、不要なビルド オーバーヘッドも発生します。

私の主な問題は、開発と運用の両方の展開を容易にする万能のシナリオがないことです。

  • プロジェクトをきれいに整頓します: モデル、コントローラー、ビューを含む個別のプロジェクト
  • 開発サイクルに適合: ビューを編集して試すだけ
  • 簡単な展開を可能にしました:開発したら、他のプロジェクトに適用します

他の開発者がこれにどのように対処しているか興味があります。これらすべての問題に対処する方法を見つけた人はいますか?

編集:多くのCMSが何らかの方法でそれを容易にしているという事実を認識していることに注意してください。ただし、これまでのところ、上記のものを解決するものに遭遇していません。

4

1 に答える 1