/ / ASP MVC tiene una interpretación extraña del modelo: los métodos de extensión no se pueden distribuir dinámicamente - c #, asp.net-mvc, visual-studio, parcial-views

ASP MVC tiene una extraña interpretación del modelo: los métodos de extensión no se pueden distribuir dinámicamente: c #, asp.net-mvc, visual-studio, parcial-views

Lo siento si esto es obvio, pero es muy confuso para mí. Después de especificar el tipo de modelo:

@model MyNamespace.MyModel

Que no muestra ningún error y el camino a la MyModel es correcto, igual que el nombre del modelo, algunos de los métodos parecen no reconocer el Model escriba de la siguiente manera:

@Html.Partial("_Title", Model)

Que produce el siguiente error:

los métodos de extensión no pueden ser enviados dinámicamente

Que no se debe mostrar, ya que la Model Se especifica el tipo. También si estoy tratando de lanzarlo de nuevo:

@Html.Partial("_Title", (MyNamespace.MyModel)Model)

Resharper está diciendo que El reparto es redundante, pero el error desaparece.

¿Qué podría causar este comportamiento a una vista MVC?

Nota: Tengo otras vistas que tienen el modelo definido de la misma manera y que usan exactamente las mismas vistas parciales, pero funcionan correctamente.

He intentado eliminar el archivo y volver a crear y los errores siguen apareciendo.

Respuestas

1 para la respuesta № 1

No estoy seguro de por qué necesitarías hacer eso. Cuando usted llama Partial() y no especifique el modelo, el modelo actual se pasa a Parcial :)

La razón por la que esto sucede es porque internamente cuando se pasa un modelo a MVC parcial () copias el actual ViewData (incluyendo ViewData["Model"]) y lo pasa al siguiente parcial, si no especifica el valor que se utiliza el valor actual.