如何:生成 EntityConnection 连接字符串(实体框架)

本主题提供有关如何生成 EntityConnection 的示例。

运行本示例中的代码

  1. AdventureWorks 销售模型添加到您的项目并将项目配置为使用实体框架 。 有关更多信息,请参见如何:使用实体数据模型向导(实体框架)

  2. 在应用程序的代码页中,添加以下 using 语句(在 Visual Basic 中为 Imports):

    Imports System
    Imports System.Collections.Generic
    Imports System.Collections
    Imports System.Data.Common
    Imports System.Data
    Imports System.IO
    Imports System.Data.SqlClient
    Imports System.Data.EntityClient
    Imports System.Data.Metadata.Edm
    
    using System;
    using System.Collections.Generic;
    using System.Collections;
    using System.Data.Common;
    using System.Data;
    using System.IO;
    using System.Data.SqlClient;
    using System.Data.EntityClient;
    using System.Data.Metadata.Edm;
    

示例

以下示例初始化基础提供程序的 System.Data.SqlClient.SqlConnectionStringBuilder,然后初始化 System.Data.EntityClient.EntityConnectionStringBuilder 对象并将此对象传递给 EntityConnection 的构造函数。

' Specify the provider name, server and database. 
Dim providerName As String = "System.Data.SqlClient"
Dim serverName As String = "."
Dim databaseName As String = "AdventureWorks"

' Initialize the connection string builder for the 
' underlying provider. 
Dim sqlBuilder As New SqlConnectionStringBuilder()

' Set the properties for the data source. 
sqlBuilder.DataSource = serverName
sqlBuilder.InitialCatalog = databaseName
sqlBuilder.IntegratedSecurity = True

' Build the SqlConnection connection string. 
Dim providerString As String = sqlBuilder.ToString()

' Initialize the EntityConnectionStringBuilder. 
Dim entityBuilder As New EntityConnectionStringBuilder()

'Set the provider name. 
entityBuilder.Provider = providerName

' Set the provider-specific connection string. 
entityBuilder.ProviderConnectionString = providerString

' Set the Metadata location. 
entityBuilder.Metadata = "res://*/AdventureWorksModel.csdl|res://*/AdventureWorksModel.ssdl|res://*/AdventureWorksModel.msl"
Console.WriteLine(entityBuilder.ToString())

Using conn As New EntityConnection(entityBuilder.ToString())
    conn.Open()
    Console.WriteLine("Just testing the connection.")
    conn.Close()
End Using
// Specify the provider name, server and database.
string providerName = "System.Data.SqlClient";
string serverName = ".";
string databaseName = "AdventureWorks";

// Initialize the connection string builder for the
// underlying provider.
SqlConnectionStringBuilder sqlBuilder =
    new SqlConnectionStringBuilder();

// Set the properties for the data source.
sqlBuilder.DataSource = serverName;
sqlBuilder.InitialCatalog = databaseName;
sqlBuilder.IntegratedSecurity = true;

// Build the SqlConnection connection string.
string providerString = sqlBuilder.ToString();

// Initialize the EntityConnectionStringBuilder.
EntityConnectionStringBuilder entityBuilder =
    new EntityConnectionStringBuilder();

//Set the provider name.
entityBuilder.Provider = providerName;

// Set the provider-specific connection string.
entityBuilder.ProviderConnectionString = providerString;

// Set the Metadata location.
entityBuilder.Metadata = @"res://*/AdventureWorksModel.csdl|
                            res://*/AdventureWorksModel.ssdl|
                            res://*/AdventureWorksModel.msl";
Console.WriteLine(entityBuilder.ToString());

using (EntityConnection conn =
    new EntityConnection(entityBuilder.ToString()))
{
    conn.Open();
    Console.WriteLine("Just testing the connection.");
    conn.Close();
}

另请参见

任务

如何:将 EntityConnection 用于对象上下文(实体框架)

概念

用于实体框架的 EntityClient 提供程序