Поиск…


Вступление

В ASP.NET MVC представления помещаются по умолчанию в папку « Views ». Иногда вы хотите изменить эти местоположения и сохранить их в другом месте.

Создать расширитель

Чтобы изменить местоположение представления, вам необходимо реализовать IViewLocationExpander . Метод ExpandViewLocations возвращает IEnumerable<string> содержащий различные местоположения для поиска, с

public class MyViewLocationExpander : IViewLocationExpander
{
    public IEnumerable<string> ExpandViewLocations(ViewLocationExpanderContext context, IEnumerable<string> viewLocations)
    {
        yield return "/CustomViewFolder/{1}/{0}.cshtml";
        yield return "/SharedFolder/{0}.cshtml";
    }

    public void PopulateValues(ViewLocationExpanderContext context)
    {            
    }
}

Зарегистрировать расширенный расширитель

Теперь вам нужно зарегистрировать Expander, чтобы он использовался в Razor View Engine. Просто добавьте это в ConfigureServices вашего класса Startup .

public void ConfigureServices(IServiceCollection services)
{
    services.Configure<RazorViewEngineOptions>(options => {
        options.ViewLocationExpanders.Add(new MyViewLocationExpander());
    });
}


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow