Quiero crear una vista usando una plantilla de afeitar, pero no quiero escribir una clase para el modelo, porque en muchas vistas tendré muchas consultas que me devolverán diferentes modelos.vista de maquinilla de afeitar con clase de modelo de tipo anónimo. ¿Es posible?
Por ejemplo, tengo una consulta LINQ:
from p in db.Articles.Where(p => p.user_id == 2)
select new
{
p.article_id,
p.title,
p.date,
p.category,
/* Additional parameters which arent in Article model */
};
Tengo que escribir una vista para esta consulta. Esta consulta devuelve un artículo.
Ahora no sé cómo debería verse una definición de modelo.
I tratado de utilizar este deffinition:
@model System.Collections.IEnumerable
Pero luego tuve un erros de campos campos doesnt existe en el tipo de objeto:
* CS1061: 'objeto' no contiene una definición para 'addition_field 'y no se pudo encontrar ningún método de extensión' addition_field 'que aceptara un primer argumento de tipo' objeto '*
Este es mi modelo para el que no quiero escribir un próximo modelo. Por supuesto
'' @Model System.Collections.IEnumerable –
Esa consulta parece proyectar una 'IEnumerable' de tipos anónimos, no de' Article' –
¿Puedes explicarme más por qué no quieres escribir un modelo? El uso de clases modelo presenta ventajas, p. Ej. puede usar intellisense, puede hacer un mayor uso de las clases parciales y puede agregar atributos para cosas como la validación de las clases modelo. – Stuart