Как указать местоположение просмотра в asp.net core mvc при использовании пользовательских локаций?

Допустим, у меня есть контроллер, который использует маршрутизацию на основе атрибутов для обработки запрошенного URL / admin / product следующим образом:

[Route("admin/[controller]")]        
public class ProductController: Controller {

    // GET: /admin/product
    [Route("")]
    public IActionResult Index() {

        return View();
    }
}

Теперь предположим, что я хотел бы сохранить свои представления организованными в структуре папок, которая приблизительно отражает пути URL, с которыми они связаны. Поэтому я хотел бы, чтобы представление этого контроллера было расположено здесь:

/Views/Admin/Product.cshtml

Чтобы пойти дальше, если бы у меня был такой контроллер:

[Route("admin/marketing/[controller]")]        
public class PromoCodeListController: Controller {

    // GET: /admin/marketing/promocodelist
    [Route("")]
    public IActionResult Index() {

        return View();
    }
}

Я хотел бы, чтобы фреймворк автоматически искал это представление здесь:

Views/Admin/Marketing/PromoCodeList.cshtml

В идеале подход для информирования о структуре расположения представления должен работать в общем случае на основе информации о маршруте на основе атрибутов, независимо от того, сколько сегментов URL задействовано (т. Е. Насколько глубоко оно вложено).

Как я могу поручить платформе Core MVC (в настоящее время я использую RC1) искать представление контроллера в таком месте?

Ответы на вопрос(4)

Ваш ответ на вопрос