Secondo Brad Wilson, RenderAction è più lento di RenderPartial.Prestazione RenderAction vs RenderPartial
Tuttavia, qualcuno ha qualche statistica che mostra la differenza di prestazioni?
Sono in procinto di sviluppare un'applicazione in cui le pagine sono composte da "Widget".
ho due scelte:
Composizione presso il View livello
chiamata RenderAction per ciascun widget. Questo è di gran lunga l'approccio più semplice, ma significa che stiamo eseguendo un ciclo MVC completo per ciascun widget.
Composizione a livello di controller
Compose una ViewModel per la pagina che contiene i dati necessari per ciascun widget. Chiama RenderPartial per ogni widget. Questo è molto più complicato da implementare, ma significa che faremo solo un ciclo MVC.
Ho testato gli approcci di cui sopra con 3 diversi widget su una pagina e la differenza nel tempo di rendering era di 10 secondi (non vale la pena preoccuparsi).
Tuttavia, qualcuno ha ottenuto risultati di test più concreti di questo, o forse ha provato a provare entrambi gli approcci?
+1 per il suggerimento DisplayFor(). Attualmente sto delegando la responsabilità di rendering al widget in modo da chiamare semplicemente '@ widget.Render (Html)' e il widget può usare 'HtmlHelper' per renderizzare se stesso. Detto questo, posso rendere questa delegazione opzionale e chiamare semplicemente 'DisplayFor()' di default. –