asp.net-core-mvc
Modifier l'emplacement de vue par défaut
Recherche…
Introduction
Dans ASP.NET MVC, les vues sont placées par défaut dans le dossier Views
. Parfois, vous souhaitez modifier ces emplacements et stocker les vues ailleurs.
Créer une vue Emplacement Expander
Pour pouvoir modifier l'emplacement de la vue, vous devez implémenter IViewLocationExpander
. La méthode ExpandViewLocations
renvoie un IEnumerable<string>
contenant les différents emplacements où chercher, avec
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)
{
}
}
Enregistrer la vue Emplacement Expander
Vous devez maintenant enregistrer l'Expander, afin qu'il puisse être utilisé par Razor View Engine. Ajoutez simplement ceci dans le ConfigureServices
de votre classe de 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
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow