Tanto Html.Partial como Html.RenderPartial tienen una sobrecarga que acepta un ViewDataDictionary. Puede construir uno nuevo, o simplemente pasar el existente.
@{ Html.RenderPartial("_MyPartial", Model.Property, new ViewDataDictionary { ... });}
o
@{ Html.RenderPartial("_MyPartial", Model.Property, ViewData);}
Estoy bastante seguro de ViewBag es accesible a su parcial sin la necesidad de pasar ningún parámetro.
EDIT:
ViewBag y ViewData son definitivamente disponible para ambos parciales y plantillas editor/visualización. Puede editarlos en su opinión antes de una vista subordinada accede a ellos de esta manera:
@{ ViewBag.MyNewValue = "..."; }
@Html.Partial("_MyPartial", Model)
Luego, en el parcial:
@{ string myString = ViewBag.MyNewValue; }
Desea utilizar ViewBag en su parcial o utilice ViewBag como modelo en su ¿parcial? –
¿Por qué los datos que necesita consumir no están definidos en el modelo que está pasando a la vista parcial? (para eso es ese segundo parámetro, después de todo) –
@Mateusz Rogulski Quiero obtener el valor de ViewBag en mi parcial – Victor