I have a controller calling a view. In the view there is a PartialView called be @Html.Partial(\"ViewName\", model). This works fine.
But i
Recently I was experiencing same problem, but the answers here were just workarounds as they propose not to use the overload of Html.Partial using viewData. But if you had to use these overloads I believe the correct answer is:
@Html.Partial(
"PartialViewName",
model_object,
new ViewDataDictionary() { { "Value1InViewBag", ViewBag.Value1InViewBag }, { "Value2InViewBag", ViewBag.Value2InViewBag } }
)
I think this answer should be used if you need to pass different ViewDataDictionary (e.g. I us it for changing HtmlFieldPrefix) and because in the view you should know, what partial view wil need in ViewBag, so it should not be problem to name all the parameters from ViewBag to be copied into new ViewBag used in partial view (apparently ViewBag uses values from ViewData).