特定のコントローラーに特定のビューエンジンを使用するにはどうすればよいですか?
今、私のプロジェクトはMVC2+Sparkビューエンジンを使用しています。Razorビューエンジンに移行したい。とても大きなプロジェクトです。これを段階的に実行したいと思います。
特定のコントローラーに特定のビューエンジンを使用するにはどうすればよいですか?
今、私のプロジェクトはMVC2+Sparkビューエンジンを使用しています。Razorビューエンジンに移行したい。とても大きなプロジェクトです。これを段階的に実行したいと思います。
両方のビューエンジンを同時に実行することは完全に可能です。現在Sparkを使用しているため、global.asaxに、現在のビューエンジンをクリアし、Sparkエンジンを追加するエントリがある可能性があります。何かのようなもの:
ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new ...);
MVCは、FindViewとFindPartial(ViewEngineインターフェイスの一部)を使用してアクションの正しいビューを見つけるように設計されており、リストの最初のビューエンジンのビューが見つからない場合は、次のビューエンジンに移動して検索します他に試すビューエンジンがなくなるまで、適切なビューを取得します。
最初にRazorViewsを検索してからSparkにフォールバックするか、またはその逆かはあなた次第です。そのため、ViewEngineを正しい順序で配置するようにしてください。または、デフォルトのエンジンを使用するには、ViewEngines.EnginesClear()行を削除し、ViewEngines.Engines.Insert(0、...)を使用して最初にSparkを作成します。
それが明確でない場合は、Sparkビットの周りにglobal.asaxコードを貼り付けてください。そうすれば、さらにサポートを試みることができます。