SqlDataConnection 类型提供程序 (F#)

提供类型来访问SQL数据库。

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

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

type SqlDataConnection<?ConnectionString : string,
                       ?ConnectionStringName : string,
                       ?LocalSchemaFile : string,
                       ?ForceUpdate : bool,
                       ?Pluralize : bool,
                       ?Views : bool,
                       ?Functions : bool,
                       ?ConfigFile : string,
                       ?DataDirectory : string,
                       ?ResolutionFolder : string,
                       ?StoredProcedures : bool,
                       ?Timeout : int,
                       ?ContextTypeName : string,
                       ?Serializable : bool>

静态类型参数

类型参数

说明

ConnectionString:字符串

数据库连接的连接字符串。如果使用Visual Studio中,连接字符串可在服务器资源管理器窗口的数据库属性中找到。

ConnectionStringName:字符串

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

? LocalSchemaFile:字符串

包含架构的.dbml文件的路径。默认值为没有本地架构文件。此选项通常用于 ForceUpdate

? ForceUpdate:布尔型

需要与数据库的直接连接可在设计时和强制本地架构文件刷新。默认值为 true。当 ForceUpdate 为false时,提供程序响应在 LocalSchemaFile的更改。

? Pluralize:布尔型

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

? 视图:布尔型

如果为true,因此在生成的类型的数据库视图。默认值为 true。

? 功能:布尔型

如果为true,因此在生成的类型的数据库功能。默认值为 true。

? ConfigFile:字符串

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

? Datadirectory =:字符串

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

? ResolutionFolder:字符串

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

? StoredProcedures

如果为true,则在生成的类型的公开存储过程。默认值为 true。

? 超时:int

超时,秒,SQLMetal.exe中使用时连接到数据库。默认值为零,并不意味着超时。

? ContextTypeName:字符串

用于访问所有生成的类型容器类型的名称。

? 序列化:布尔型

如果为true,则生成的类型可序列化。默认值为 false。

备注

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

被视为使用SqlDataConnection类型提供程序,当您具有与SQL数据库的直接连接和若要生成在数据库中表示数据的类型。在开发过程中,如果不希望使用与数据库的活动连接,可以使用 DbmlFile 类型提供程序 (F#)

简单生成的顶级类型对该类型提供程序包含嵌套类型调用 ServiceTypes,在下从数据库架构生成的类型出现。顶级类型包含该方法不带任何参数的 GetDataContext,采用连接字符串作为参数的和一个重载。SqlMetal.exe可用,以完整视图显示生成的两个数据上下文和移除实用工具方法,但数据字段的保留属性的简化视图。此顶级GetDataContext获取类型的简化视图。GetDataContext 方法返回从 DataContext派生的类型,因此,该静态类型参数命名 ContextTypeName或SQLMetal.exe依赖于类型的名称,如果未提供静态的参数。除了基类方法之外,数据上下文类型作为数据库包含表。

下表总结了该类型提供的类型提供程序为窗体的表达式:

type MyDb = SqlDataConnection<connectionString>

在下表中,DataContextTypeName 是数据上下文类型名称的占位符提供者的,并且*指示在命名空间中的所有类型。

类型

说明

MyDb

整个容器类型。

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

MyDb.ServiceTypes

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

MyDb.ServiceTypes.*

SqlMetal.exe生成的嵌入式类型。

MyDb.ServiceTypes.DataContextTypeName

数据上下文类型,继承 DataContext

MyDb.ServiceTypes.SimpleDataContextTypes.DataContextTypeName

如果这些选项后,包含每个方法的方法在完整的上下文类型,包括存储过程和函数。方法返回 ISingleResult<T>

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

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

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

警告说明警告

提高只读操作性能的说明,将 DataContext 对象的 ObjectTrackingEnabled 属性设置为false。

平台

Windows 8,Windows 7,Windows server 2008 R2

版本信息

F#核心库版本

受以下版本支持:4.0

请参见

任务

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

参考

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

SqlMetal.exe(代码生成工具)