(PartialView) The model item passed into the dictionary is of type 'Customer', but this dictionary requires a model item of type 'UserProfile'

Razzer picture Razzer · May 10, 2013 · Viewed 18.4k times · Source
@model Customer

@Html.Partial("_UserProfile", (UserProfile)Model.UserProfile)

When i run this code, i get this error:

The model item passed into the dictionary is of type 'Customer', but this dictionary requires a model item of type 'UserProfile'.

Partial View _UserProfile is strongly typed.

I want to be able to edit these field. Any suggestions?

Answer

Murray picture Murray · Jun 3, 2013

Make sure your Model.UserProfile is not null.

I found your post trying to debug the same error, and it turned out I hadn't initialised my "Model.UserProfile" equivalent.

I guess what's happening here, is that if a null model is passed to RenderPartial, it defaults to using the main view's model? Can anyone confirm this?