Red de conocimiento informático - Computadora portátil - Cliente ADO.NET Entity Framework

Cliente ADO.NET Entity Framework

Después de definir el CS/MS/SS del Entity Data Model, puede utilizar el cliente de ADO.NET Entity Framework para acceder al EDM. El proveedor de datos en el EDM accederá a los datos del. fuente de datos y luego se envía de vuelta al cliente.

Actualmente ADO.NET Entity Framework tiene tres clientes4:

Entity Client

Entity Client es el cliente nativo (Native) en ADO.NET Entity Framework Client) , su modelo de objetos es muy similar a otros clientes de ADO.NET, también tiene Connection, Command, DataReader y otros objetos, pero la mayor diferencia es que tiene su propio comando SQL (Entity SQL), que se puede usar en SQL. Acceder a EDM, en pocas palabras, es tratar a EDM como una base de datos de entidades.

// Inicializa EntityConnectionStringBuilder.

EntityConnectionStringBuilderentityBuilder = new EntityConnectionStringBuilder();

//Establece el nombre del proveedor.

entityBuilder .Provider = proveedorName;

// Establece la cadena de conexión específica del proveedor.

entityBuilder.ProviderConnectionString = proveedorString;

// Establece la ubicación de los metadatos.

entityBuilder.Metadata = @res://*/AdventureWorksModel.csdl|

res://*/AdventureWorksModel.ssdl|

res://* /AdventureWorksModel.msl;

Console.WriteLine(entityBuilder.ToString());

usando (EntityConnection conn = new EntityConnection(entityBuilder.ToString()))

{

conn.Open();

Console.WriteLine(Solo probando la conexión);

conn.Close();

}

Contexto del objeto

Debido a que Entity Client es demasiado estándar y no se ajusta al espíritu de ORM, Microsoft ha agregado una capa superior para la programación en Entity Client. La interfaz para el acceso directo al lenguaje puede tratar a EDM como un objeto. Esta interfaz es el contexto de objeto (servicio de objeto).

Cualquier acción en EDM en el contexto del objeto se convertirá automáticamente en Entity SQL y se enviará a EDM para su ejecución.

// Obtiene los contactos con el nombre especificado.

ObjectQuery contactQuery = context.Contact

.Where(it.LastName = @ln AND it.FirstName = @fn,

new ObjectParameter(ln, lastName),

new ObjectParameter(fn, firstName));

LINQ to Entities p>

Object Context cambia el acceso a EDM a un método para acceder a colecciones de objetos, lo que le da a LINQ espacio para jugar, por lo que nació LINQ to Entities. En pocas palabras, utiliza LINQ para acceder a EDM, de modo que las funciones. de LINQ se puede ejercer en la base de datos.

usando (AdventureWorksEntities AWEntities = new AdventureWorksEntities())

{

ObjectQuery productos = AWEntities.Product;

IQueryable productNames =

de p en productos

seleccione p;