Provider EntityClient per Entity FrameworkEntityClient Provider for the Entity Framework

EntityClient è un provider di dati usato dalle applicazioni Entity Framework per accedere a dati descritti in un modello concettuale.The EntityClient provider is a data provider used by Entity Framework applications to access data described in a conceptual model. Per informazioni sui modelli concettuale, vedere modellazione e Mapping.For information about conceptual models, see Modeling and Mapping. EntityClient usa altri provider di dati .NET Framework per accedere all'origine dati,EntityClient uses other .NET Framework data providers to access the data source. ad esempio il provider di dati .NET Framework per SQL Server (SqlClient) in caso di accesso a un database SQL Server.For example, EntityClient uses the .NET Framework Data Provider for SQL Server (SqlClient) when accessing a SQL Server database. Per informazioni sul provider SqlClient, vedere SqlClient per Entity Framework.For information about the SqlClient provider, see SqlClient for the Entity Framework. Il provider EntityClient viene implementato nello spazio dei nomi System.Data.EntityClient.The EntityClient provider is implemented in the System.Data.EntityClient namespace.

Gestione di connessioniManaging Connections

Il Entity FrameworkEntity Framework si basa sulle specifiche dell'archiviazione ADO.NETADO.NET i provider di dati, fornendo un EntityConnection a un provider di dati sottostante e un database relazionale.The Entity FrameworkEntity Framework builds on top of storage-specific ADO.NETADO.NET data providers by providing an EntityConnection to an underlying data provider and relational database. Per costruire un EntityConnection dell'oggetto, è necessario fare riferimento a un set di metadati che contiene i modelli necessari e i mapping, nonché una stringa di connessione e nome provider dati specifici dell'archiviazione.To construct an EntityConnection object, you have to reference a set of metadata that contains the necessary models and mapping, and also a storage-specific data provider name and connection string. Dopo il EntityConnection è sul posto, le entità sono accessibili tramite le classi generate dal modello concettuale.After the EntityConnection is in place, entities can be accessed through the classes generated from the conceptual model.

È possibile specificare una stringa di connessione nel file app.config.You can specify a connection string in app.config file.

System.Data.EntityClient include anche la classe EntityConnectionStringBuilder.The System.Data.EntityClient also includes the EntityConnectionStringBuilder class. Questa classe consente agli sviluppatori di creare a livello di codice stringhe di connessione sintatticamente corrette, nonché di analizzare e ricompilare le stringhe di connessione esistenti, usando le proprietà e i metodi della classe.This class enables developers to programmatically create syntactically correct connection strings, and parse and rebuild existing connection strings, by using properties and methods of the class. Per ulteriori informazioni, vedere procedura: compilare una stringa di connessione EntityConnection.For more information, see How to: Build an EntityConnection Connection String.

Creazione di queryCreating Queries

Il Entity SQLEntity SQL language è un sottolinguaggio indipendente dall'archiviazione di SQL che interagisce direttamente con gli schemi di entità concettuali e supporta i concetti di Entity Data Model, quali l'ereditarietà e le relazioni.The Entity SQLEntity SQL language is a storage-independent dialect of SQL that works directly with conceptual entity schemas and supports Entity Data Model concepts such as inheritance and relationships. Il EntityCommand classe viene utilizzata per eseguire un Entity SQLEntity SQL comando su un modello di entità.The EntityCommand class is used to execute an Entity SQLEntity SQL command against an entity model. Quando si costruiscono oggetti EntityCommand, è possibile specificare un nome di stored procedure o un testo della query.When you construct EntityCommand objects, you can specify a stored procedure name or a query text. Entity FrameworkEntity Framework funziona con provider di dati specifici dell'archiviazione per convertire il linguaggio Entity SQLEntity SQL generico in query specifiche dell'archiviazione.The Entity FrameworkEntity Framework works with storage-specific data providers to translate generic Entity SQLEntity SQL into storage-specific queries. Per ulteriori informazioni sulla scrittura Entity SQLEntity SQL query, vedere linguaggio Entity SQL.For more information about writing Entity SQLEntity SQL queries, see Entity SQL Language.

Nell'esempio seguente viene creato un EntityCommand oggetto e assegna un Entity SQLEntity SQL query testo relativo EntityCommand.CommandText proprietà.The following example creates an EntityCommand object and assigns an Entity SQLEntity SQL query text to its EntityCommand.CommandText property. Questo Entity SQLEntity SQL le richieste di query prodotti ordinati in base al listino prezzi dal modello concettuale.This Entity SQLEntity SQL query requests products ordered by the list price from the conceptual model. Il codice seguente non comporta alcuna conoscenza del modello di archiviazione.The following code has no knowledge of the storage model at all.

EntityCommand cmd = conn.CreateCommand();

cmd.CommandText = @" SELECT VALUE pcmd.CommandText = @" SELECT VALUE p

FROM AdventureWorksEntities.Product AS p

ORDER BY p.ListPrice ";

Esecuzione di queryExecuting Queries

Quando una query viene eseguita, viene analizzata e convertita in una struttura ad albero dei comandi canonici.When a query is executed, it is parsed and converted into a canonical command tree. Tutte le elaborazioni successive vengono eseguite nell'albero dei comandi.All subsequent processing is performed on the command tree. L'albero dei comandi costituisce il mezzo di comunicazione tra System.Data.EntityClient e il provider di dati .NET Framework.NET Framework sottostante, ad esempio System.Data.SqlClient.The command tree is the means of communication between the System.Data.EntityClient and the underlying .NET Framework.NET Framework data provider, such as System.Data.SqlClient.

EntityDataReader espone i risultati dell'esecuzione di un oggetto EntityCommand su un modello concettuale.The EntityDataReader exposes the results of executing a EntityCommand against a conceptual model. Per eseguire il comando che restituisce EntityDataReader, chiamare ExecuteReader.To execute the command that returns the EntityDataReader, call ExecuteReader. EntityDataReader implementa IExtendedDataRecord per descrivere risultati completamente strutturati.The EntityDataReader implements IExtendedDataRecord to describe rich structured results.

Gestione di transazioniManaging Transactions

In Entity Framework è possibile usare le transazioni in modo esplicito e in modo automatico.In the Entity Framework, there are two ways to use transactions: automatic and explicit. Le transazioni automatiche usano lo spazio dei nomi System.Transactions e le transazioni esplicite usano la classe EntityTransaction.Automatic transactions use the System.Transactions namespace, and explicit transactions use the EntityTransaction class.

Per aggiornare i dati esposti tramite un modello concettuale. vedere procedura: gestire le transazioni in Entity Framework.To update data that is exposed through a conceptual model; see How to: Manage Transactions in the Entity Framework.

In questa sezioneIn This Section

Procedura: Compilare una stringa di connessione EntityConnectionHow to: Build an EntityConnection Connection String

Procedura: Eseguire una query che restituisce risultati PrimitiveTypeHow to: Execute a Query that Returns PrimitiveType Results

Procedura: Eseguire una query che restituisce risultati StructuralTypeHow to: Execute a Query that Returns StructuralType Results

Procedura: Eseguire una query che restituisce risultati RefTypeHow to: Execute a Query that Returns RefType Results

Procedura: Eseguire una query che restituisce tipi complessiHow to: Execute a Query that Returns Complex Types

Procedura: Eseguire una query che restituisce raccolte annidateHow to: Execute a Query that Returns Nested Collections

Procedura: Eseguire una query Entity SQL con parametri tramite EntityCommandHow to: Execute a Parameterized Entity SQL Query Using EntityCommand

Procedura: Eseguire una stored procedure con parametri tramite EntityCommandHow to: Execute a Parameterized Stored Procedure Using EntityCommand

Procedura: Eseguire una query polimorficaHow to: Execute a Polymorphic Query

Procedura: Esplorare relazioni con l'operatore NavigateHow to: Navigate Relationships with the Navigate Operator

Vedere ancheSee Also

Gestione di connessioni e transazioniManaging Connections and Transactions
ADO.NET Entity FrameworkADO.NET Entity Framework
Riferimenti per il linguaggioLanguage Reference