Pregunta

¿Es posible añadir propiedades a mi modelo que no estan disponibles en la base de datos?

Por ejemplo, tengo una tabla de calendario, quiero retireve estos datos en mi controlador MVC luego trabajar tiempo que queda hasta que cada entrada se inicia y devolver esta a la vista. Así que me gustaría otra propiedad en mi modelo de calendario para mantener el tiempo dejó que es un valor que voy a generar exterior de la base de datos.

He intentado sólo añadir la propiedad, pero cuando lo hago, recibo errores porque la propiedad no está asignada a nada.

Es esto posible?

Gracias

¿Fue útil?

Solución

Usted debe ser capaz de añadir la propiedad a la modelo, pero usted no será capaz de consultar con LINQ. LINQ en última instancia, la construcción y expresión que se desee ejecutar contra la base de datos utilizando SQL. Su en ese momento que su LINQ no podrá encontrar un mapeo de su propiedad a un campo en algún lugar.

Si la consulta devuelve un IEnumerable del tipo real en el que ha creado la propiedad de su punto de vista puede ser capaz de acceder a él. No puedo recordar si EF insiste en la cartografía, en ese caso, se puede hacer.

Usted puede encontrar que usted puede crear su posterior consulta LINQ que utiliza LINQ a objetos si desea proporcionar algún otro tipo de material compuesto a la vista.

Otros consejos

Es una propiedad no persistente o transitoria. No sé Entidad Framwork bien pero con una rápida búsqueda en Google que debe encontrar la respuesta.

Por cierto, se puede encontrar una gran cantidad de consejos aquí: http://weblogs.asp.net/zeeshanhirani/archive/2008/12/18/my-christmas-present-to-the-entity-framework-community.aspx

Después de hacer una búsqueda rápida en mí mismo y una prueba en VS2008 no veo una manera de excluir a una propiedad de la asignación. Tal vez se requiere editar manualmente el archivo de asignación? : (

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top