Tengo un modelo similar a este:
public class SampleModel
{
public Product Product { get; set; }
}
Y en mi controlador obtengo una excepción al intentar imprimir
@Html.TextBoxFor(p => p.Product.Name)
Este es el error:
Exception: An expression tree may not contain a dynamic operation
Si alguien me puede dar algunas pistas sobre cómo solucionar esto, ¡realmente lo agradecería!
asp.net-mvc
.net-4.0
razor
femseks
fuente
fuente
Respuestas:
Me parece que tienes una vista sin tipo. Por defecto, las vistas de Razor en MVC3 RC se escriben como
dynamic
. Sin embargo, las lambdas no admiten miembros dinámicos. Tienes que escribir fuertemente tu modelo. En la parte superior de su archivo de vista, agreguefuente
Un error común que es la causa de esto es cuando agrega
en la parte superior de la página en lugar de
fuente
En este enlace explique sobre @model, vea un extracto:
fuente
Parece que tu vista está escrita
dynamic
. Establezca el tipo correcto en la vista y verá que el error desaparece.fuente
Antes de usar (escriba html helper a la vista) esta línea
Debe incluir su modelo en su página para hacer una vista de tipo fuerte.
fuente
Este error me ocurrió porque tenía @@ model en lugar de @model ... error de copiar y pegar en mi caso. Cambiar a @model me lo arregló.
fuente
En vb.net debes escribir @ModelType.
fuente