asp.net-core-mvc
Cambia la posizione della vista predefinita
Ricerca…
introduzione
In ASP.NET MVC, le viste vengono posizionate per impostazione predefinita nella cartella Views
. A volte vuoi cambiare queste posizioni e archiviare le viste da qualche altra parte.
Crea un expander di posizione View
Per poter modificare la posizione della vista, è necessario implementare IViewLocationExpander
. Il metodo ExpandViewLocations
restituisce un oggetto IEnumerable<string>
contenente le diverse posizioni in cui cercare, con
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)
{
}
}
Registra l'espansore di posizione View
Ora è necessario registrare l'Expander, in modo che possa essere utilizzato dal Razor View Engine. Basta aggiungere questo nel ConfigureServices
della tua classe di 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
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow