Supongamos que tengo una vista parcial llamada UserDetails
cuya @model
cláusula se establece en una clase de modelo llamada User
.¿Cómo invoco una vista parcial con "nulo" para su modelo?
Ahora supongamos que tengo otra clase de modelo que se ve algo como esto:
public sealed class SpecialModel
{
public User SpecialUser;
public ... // other stuff
}
Dentro de una visión para el SpecialModel
, quiero invocar a mi vista parcial mencionado anteriormente:
@model MyProject.Models.SpecialModel
@{ ViewBag.Title = "..."; }
<div class='user'>@Html.Partial("UserDetails", Model.SpecialUser)</div>
Estos trabajos muy bien si el usuario no es null
. Sin embargo, si el usuario es null
, consigo esta excepción:
System.InvalidOperationException
: El elemento de modelo pasado en el diccionario es del tipo 'MyProject.Models.SpecialModel', pero este diccionario requiere un elemento de modelo del tipo 'MiProyecto .Models.User '.
Claramente, el mensaje de excepción es mentira. ¿Cómo puedo arreglar esto correctamente para que pueda pasar null
normalmente?
La siguiente solución [aquí] (http://stackoverflow.com/a/12037580/649497) supera la desventaja. – Mojtaba