Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

EntityConnection Constructor (MetadataWorkspace^, DbConnection^)

 

Initializes a new instance of the EntityConnection class with a specified MetadataWorkspace and DbConnection.

Namespace:   System.Data.EntityClient
Assembly:  System.Data.Entity (in System.Data.Entity.dll)

public:
EntityConnection(
	MetadataWorkspace^ workspace,
	DbConnection^ connection
)

Parameters

workspace
Type: System.Data.Metadata.Edm::MetadataWorkspace^

A MetadataWorkspace to be associated with this EntityConnection.

connection
Type: System.Data.Common::DbConnection^

The underlying data source connection for this EntityConnection object.

Exception Condition
ArgumentNullException

The workspace or connection parameter is null.

ArgumentException

The conceptual model is missing from the workspace.

-or-

The mapping file is missing from the workspace.

-or-

The storage model is missing from the workspace.

-or-

The connection is not in a closed state.

ProviderIncompatibleException

The connection is not from an ADO.NET Entity Framework-compatible provider.

This constructor enables you to create an EntityConnection from metadata that is not from a file on a disk or from an embedded resource in an assembly.

To avoid inadvertently putting objects such as System.Data.Common.CommandTrees and ObjectContext out of sync with their metadata, the EntityConnection must lock its metadata. No changes to the connection string are allowed after the metadata is locked. The following are two scenarios in which metadata is locked:

  • The EntityConnection instance is constructed through the default constructor, or through the EntityConnection(String^) constructor, which accepts a connection string. In either case the connection string might be changed multiple times before the connection is opened. Calling M:System.Data.EntityClient.EntityConnection.Open() or M:System.Data.EntityClient.EntityConnection.GetMetadataWorkspace() locks the metadata.

  • The EntityConnection instance is constructed through this constructor (EntityConnection(MetadataWorkspace^, DbConnection^)), which accepts a MetadataWorkspace and a DbConnection. In this case the metadata is locked at construction time. No changes to the connection string are ever allowed.

When metadata is loaded, the EntityConnection verifies that the conceptual model, the storage model, and the mapping file are all present.

.NET Framework
Available since 3.5
Return to top
Show:
© 2017 Microsoft