MVC4 Razor Custom View Locator
Eu estou trabalhando em um aplicativo MVC4 que é projetado para atender dois domínios. A maior parte do nosso conteúdo será compartilhada entre os domínios, mas, às vezes, precisaremos renderizar uma marcação diferente (usando o Razor), dependendo de qual site a solicitação veio.
Idealmente, eu quero uma abordagem baseada em convenção que me permita ter uma estrutura de pastas como esta:
Views
+ Domain1
+ ControllerName
View1
View2
+ Domain2
+ ControllerName
View1
+ ControllerName
View1
View2
Ao resolver uma exibição, gostaria de verificar primeiro a pasta específica do domínio e depois a pasta de visualizações gerais.
Meu primeiro pensamento foi implementar um mecanismo de visualização personalizado que herda o RazorViewEngine que trocaria as cadeias de caracteres ViewLocationFormats dependendo do domínio de solicitação. Infelizmente tudo isso está enterrado no VirtualPathProviderEngine e não pode ser substituído.