SqlEntityConnection 类型提供程序 (F#)

提供类型来访问数据库,使用LINQ to entities映射。当您为数据库时,使用ADO.NET实体模型此类型提供程序很有用。

Namespace/Module Path: Microsoft.FSharp.Data.TypeProviders

Assembly: FSharp.Data.TypeProviders (在FSharp.Data.TypeProviders.dll)

type SqlEntityConnection<?ConnectionString : string,
                         ?ConnectionStringName : string
                         ?LocalSchemaFile : string,
                         ?Provider : string,
                         ?EntityContainer : string,
                         ?ConfigFile : string,
                         ?DataDirectory : string,
                         ?ResolutionFolder : string,
                         ?ForceUpdate : bool,
                         ?Pluralize : bool,
                         ?SuppressForeignKeyProperties : bool>

静态类型参数

类型参数

说明

? ConnectionString:字符串

数据库连接的连接字符串。

? ConnectionStringName:字符串

连接字符串的名称数据库连接以在配置文件。

? LocalSchemaFile:字符串

包含架构的.csdl文件的路径。此参数通常与设置的ForceUpdate为true。

? 提供程序:字符串

要使用的ADO.NET数据提供程序的名称。默认值为 System.Data.SqlClient

? EntityContainer:字符串

使用的名称为表示实体容器的生成的类型,也称为数据上下文。默认值为EntityContainer。

? ConfigFile:字符串

对于连接使用配置文件的名称的字符串。默认值为app.config或web.config。

? Datadirectory =:字符串

替换数据目录的名称|Datadirectory = |在连接字符串。默认目录为项目或脚本内容。

? 解决方案文件夹:字符串

要使用的文件夹解析相对文件路径在编译时。默认值为包含项目或脚本的文件夹。

? ForceUpdate:布尔型

确定类型提供程序是否更新生成的类型以反映数据库架构的更改。当 ForceUpdate 为false时,提供程序响应在 LocalSchemaFile的更改。默认值为 true。

? Pluralize:布尔型

如果为true,使用复数形式对生成的类型名称。默认值为 false。

? SuppressForeignKeyProperties:布尔型

排除在实体类型定义的外键特性。默认值为 false。

备注

有关演示如何使用此类型提供程序,请参见 演练:使用类型提供程序和实体访问 SQL 数据库 (F#)的演练。

实体数据模型机制是允许您定义数据库架构主要独立于特定的数据源.NET Framework的库(如SQL数据库)。有关更多信息,请参见ADO.NET Entity FrameworkEntity Framework Overview。由实体数据模型表示的数据库架构中输入与文件的特定XML格式具有.edmx扩展的。

下表描述窗体声明的SqlEntityConnection类型生成的类型提供程序:

type MyDb = SqlEntityConnection<parameters>

在下表中,EntityContainer 是帮助生成的元素个类型,具有基类型 ObjectContext。如果为,则这是静态 EntityContainer参数的值为。否则,为帮助选择的名称。

类型

说明

MyDb

整个容器类型。

包含返回数据上下文的简化视图的方法 GetDataContext。方法返回MyDB.ServiceTypes.SimpleDataContextTypes的新实例。EntityContainer。与该connectionString的参数的版本,当连接字符串是在运行时确定的,可以使用。

MyDb.ServiceTypes

包含嵌入的完整类型和简化的类型该数据库的。

MyDb.ServiceTypes.*

帮助生成的嵌入式类型。

MyDb.ServiceTypes.EntityContainer

数据上下文类型,继承 ObjectContext

MyDb.ServiceTypes.SimpleDataContextTypes.EntityContainer

包含完整的上下文类型的每个方法的一个方法,包括存储过程和函数。方法返回 ISingleResult<T>

包含完整的上下文类型的每个属性的属性。属性返回 Table<TEntity>

属性连接获取数据库连接作为 DbConnection实例。

属性DataContext获取完全的数据上下文,类型 ObjectContext。这是一种类型生成的 EntityContainer 类型的基类型提供程序。

指定将在运行时的实体数据模型连接字符串,在调用GetDataContext时如下所示:

metadata=res://*/entityNamespaceName.csdl|res://*/entityNamespaceName.ssdl|res://*/entityNamespaceName.msl;provider=provider;provider connection string="connectionString"

有关实体数据模型的连接字符串的更多信息,请参见 Connection Strings

平台

Windows 8,Windows 7,Windows server 2008 R2

版本信息

F#核心库版本

受以下版本支持:4.0

请参见

任务

演练:使用类型提供程序和实体访问 SQL 数据库 (F#)

参考

Microsoft.FSharp.Data.TypeProviders 命名空间 (F#)

EdmxFile 类型提供程序 (F#)

其他资源

EDM Generator (EdmGen.exe)

Entity Framework Overview