В настоящее время я работаю над старым приложением ASP.NET MVC 1, чтобы добавить поддержку тем. Я посмотрел в Интернете и смог создать свой собственный ViewEngine, который пока работает довольно хорошо. Только одна проблема бьет меня.
Я переписал следующий метод для WebFormViewEngine:
public override ViewEngineResult FindView(
ControllerContext controllerContext,
string viewName,
string masterName,
bool useCache)
В этом методе я настраиваю форматы местоположения для поддержки темы. К сожалению, параметр masterName всегда пуст! Так что мне нужно проверить
if (string.IsNullOrEmpty(masterName))
masterName = "Site";
всегда один, чтобы двигатель работал. Но так как у меня есть несколько основных файлов, это решение отстой, как только представление требует другого мастера, чем «Сайт».
Кто-нибудь знает, как я могу получить имя основного вида в этом методе?