2012-01-20 8 views

Respuesta

4

El procedimiento de mapeo a tienda y vew aún no se admite en el código. Y estos son algunos ejemplos del marco de la entidad de programación de Julia Lerman: Code First.

Mapeo de vista actualizable

modelBuilder.Entity<MyEntity>().ToTable("MY_VIEW")

Ver nombres de columna debe ser la misma que la Entidad nombre del campo y que puede utilizar el marco de la entidad para insertar, actualizar y borrar datos , así como seleccionándolo Simplemente mienta a Code First y diga la Vista como la Tabla.

Utilización de Vista para rellenar objetos

var myEntity = dbContext.MyEntity.SqlQuery("SELECT * FROM dbo.MY_VIEW")

Ver nombres de columna debe ser el mismo que los nombres de campo de la entidad y que aún así obtener DbContext características tales como el control de cambios, la carga diferida.

Utilización de Vista para rellenar nonmodel Objetos

var myNonModel = dbContext.Database.SqlQuery("SELECT * FROM dbo.MY_VIEW")

Ver nombres de columna deben ser los mismos que los nombres de campo Entidad.

Utilización de procedimientos almacenados

misma técnica para trabajar con la vista.

var myEntity = dbContext.MyEntity.SqlQuery("dbo.StoredProcedureName @p0 @p1", myParam1, myParam2)

2

El mapeo del procedimiento almacenado no es compatible en primer lugar con el código. El mapeo de vistas debe ser pirateado: pretenderá que la vista es una tabla y espera que su aplicación funcione. Fluent-api fue diseñado para admitir solo el primer escenario de código = su aplicación creará una base de datos. Por lo tanto, no admite funciones de bases de datos con lógica en el nivel de la base de datos, como procedimientos almacenados, vistas o funciones.

+0

+1: Cuando realmente utilizando código-primera, o cualquier pregunta/respuesta relacionada con la verdadera Código-En primer lugar, la base de datos no debería tener vistas, funciones o SP que son utilizados por cualquier aplicación . – Suamere

Cuestiones relacionadas