Per caso, esiste un modo semplice per impostare un MasterView predefinito per tutte le azioni all'interno di un controller specifico?ASP.NET MVC - Impostare la Vista Master di conseguenza con il Controller
per esempio se ho la HomeController voglio tutte le azioni al suo interno in possesso del Site.master come default, ma se sono dentro AccountsController voglio tutta l'azione di ereditare il Admin. Maestro e così via ..
sono riuscito a farlo con:
return View("viewName", "masterName", objectModel);
Ma in questo modo devo applicarlo ogni volta che chiamo il metodo View.
ero alla ricerca di qualcosa di più semplice come su binari in cui possiamo dichiarare:
class HomeController < ApplicationController
layout 'site'
def index
end
def create
...
end
class AccountsController < ApplicationController
layout 'admin'
def index
end
def create
...
end
è possibile?
Grazie in anticipo
Hi Olle, grazie per la tua risposta. Solo una cosa che non ho catturato, è come un ViewData ["MasterfileToUser"] riflette il file Master? È tutto ciò che dovrei fare per farlo caricare correttamente il Master File? – zanona
Il mio cattivo assegnarlo da viewdata non funzionerà. Ho fatto una seconda pugnalata ma al momento non sono da qualche parte dove posso testare questo. In OnActionExecuted il risultato (un'istanza ViewResult) è disponibile ha una proprietà Masterpage, quindi ora lo sto assegnando. Per favore, mettiti alla prova :) – olle
Olle Un solo pensiero qui ... Ora ogni volta chiamo il metodo RedirectToAction genera un errore: Impossibile eseguire il cast dell'oggetto di tipo 'System.Web.Mvc.RedirectToRouteResult' per digitare 'System.Web. Mvc.ViewResult'. E acuisce la classe MasterFileFileAttribute. Qualche idea su come risolverlo? Grazie – zanona