それは(デバッグビューアーですが)、ViewEngines両方(かみそり+ Webフォーム、最初のものを使用しています)がViewEnginesコレクション内にあり、両方ともビューを(手動で)見つけて表示でき、手動で試しました。
では、なぜ彼らは自分でそれを行うことができないのでしょうか? これは単なるアクション メソッドであり、それ以上のものではありません。
public ViewResult Login()
{
return View();
}
メジャーアップデート
メソッドをオーバーライドしましたOnResultExecuting:
protected override void OnResultExecuting(ResultExecutingContext filterContext)
{
if (filterContext.Result is ViewResult)
{
if (((ViewResult)filterContext.Result).ViewEngineCollection.Count == 0)
{
((ViewResult)filterContext.Result).ViewEngineCollection.Add(new RazorViewEngine());
}
}
base.OnResultExecuting(filterContext);
}
そして、毎回、すべてのビューを a に new を追加する必要があることがわかりIViewEngineましたViewResult。ではなぜそうなのか?ViewEngines.Enginesコレクションが空でなくても?
マイナーアップデート。
アイドリングViewEngineCollectionのある時点で空になるのをやめました。
