DbProviderServices 类

[本页针对的是实体框架版本 6。最新版本以“实体框架”NuGet 包的形式提供。有关实体框架的更多信息,请参见 msdn.com/data/ef。]

用于生成命令定义的工厂;使用该对象的类型作为提供程序工厂上 IServiceProvider.GetService 方法的参数;

继承层次结构

System.Object
  System.Data.Entity.Core.Common.DbProviderServices
    System.Data.Entity.SqlServer.SqlProviderServices
    System.Data.Entity.SqlServerCompact.SqlCeProviderServices

命名空间:  System.Data.Entity.Core.Common
程序集:  EntityFramework(在 EntityFramework.dll 中)

语法

声明
Public MustInherit Class DbProviderServices _
    Implements IDbDependencyResolver
用法
Dim instance As DbProviderServices
public abstract class DbProviderServices : IDbDependencyResolver
public ref class DbProviderServices abstract : IDbDependencyResolver
[<AbstractClassAttribute>]
type DbProviderServices =  
    class 
        interface IDbDependencyResolver 
    end
public abstract class DbProviderServices implements IDbDependencyResolver

DbProviderServices 类型公开以下成员。

构造函数

  名称 描述
受保护的方法 DbProviderServices 初始化 DbProviderServices 类的新实例。

顶部

方法

  名称 描述
受保护的方法 AddDependencyResolver 添加一个 IDbDependencyResolver,它将用于在使用应用程序配置文件中的某一项或通过 DbConfiguration 中基于代码的注册将某派生类型注册为 EF 提供程序时解析附加的默认提供程序服务。
受保护的方法 CloneDbCommand 请参见问题 2390 - 在 DbCommand 上克隆 DesignTimeVisible 属性可能导致死锁。因此此处允许重写子类。
公共方法 CreateCommandDefinition(DbCommand) 基于原型命令创建默认的 DbCommandDefinition 对象。此方法旨在使提供程序编写者从命令生成默认命令定义。注意:这将克隆原型
公共方法 CreateCommandDefinition(DbCommandTree) 若给定命令目录树,创建命令定义对象。
公共方法 CreateCommandDefinition(DbProviderManifest, DbCommandTree) 从指定的清单和命令目录树创建命令定义。
公共方法 CreateDatabase 创建一个由连接指示的数据库并且基于 storeItemCollection 的内容创建架构对象(表、主键、外键)。
公共方法 CreateDatabaseScript 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。
受保护的方法 CreateDbCommandDefinition 为指定的提供程序清单和命令目录树创建命令定义对象。
公共方法 DatabaseExists(DbConnection, Nullable<Int32>, StoreItemCollection) 返回一个值,该值指示服务器上是否存在给定数据库。
公共方法 DatabaseExists(DbConnection, Nullable<Int32>, Lazy<StoreItemCollection>) 返回一个值,该值指示服务器上是否存在给定数据库。
受保护的方法 DbCreateDatabase 创建一个由连接指示的数据库并且基于 StoreItemCollection 的内容创建架构对象(表、主键、外键)。
受保护的方法 DbCreateDatabaseScript 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。
受保护的方法 DbDatabaseExists(DbConnection, Nullable<Int32>, StoreItemCollection) 返回一个值,该值指示服务器上是否存在给定数据库。
受保护的方法 DbDatabaseExists(DbConnection, Nullable<Int32>, Lazy<StoreItemCollection>) 返回一个值,该值指示服务器上是否存在给定数据库。
受保护的方法 DbDeleteDatabase 删除指定的数据库。
受保护的方法 DbGetSpatialServices 已过时。 为 DbProviderServices 获取空间服务。
公共方法 DeleteDatabase 删除指定的数据库。
公共方法 Equals (继承自 Object。)
公共方法静态成员 ExpandDataDirectory 如果给定路径以 |DataDirectory| 开头则展开该路径中的 |DataDirectory| 并且返回扩展的路径;如果给定路径未以 |DataDirectory| 开头,则返回给定字符串。
受保护的方法 Finalize (继承自 Object。)
公共方法静态成员 GetConceptualSchemaDefinition 返回表示 CSDL 说明的 XML 读取器
受保护的方法 GetDbProviderManifest 在派生类中重写时,返回派生自 DbProviderManifest 的类的实例。
受保护的方法 GetDbProviderManifestToken 返回给定连接的提供程序清单标记。
受保护的方法 GetDbSpatialDataReader 为 DbProviderServices 获取空间数据读取器。
公共方法静态成员 GetExecutionStrategy(DbConnection) 获取将用于执行使用指定连接的方法的 IDbExecutionStrategy
受保护的方法静态成员 GetExecutionStrategy(DbConnection, String) 获取将用于执行使用指定连接的方法的 IDbExecutionStrategy。此重载应由派生类用于与包装提供程序兼容。
公共方法 GetHashCode (继承自 Object。)
公共方法静态成员 GetProviderFactory 基于指定的 DbConnection 检索 DbProviderFactory。
公共方法 GetProviderManifest 使用指定的版本信息返回提供程序清单。
公共方法 GetProviderManifestToken 返回给定连接的提供程序清单标记。
公共方法静态成员 GetProviderServices 返回给定连接的提供程序。
公共方法 GetService 在使用应用程序配置文件中的某一项或通过 DbConfiguration 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。
公共方法 GetServices 在使用应用程序配置文件中的某一项或通过 DbConfiguration 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。
公共方法 GetSpatialDataReader 为 DbProviderServices 获取空间数据读取器。
公共方法 GetSpatialServices(String) 已过时。 为 DbProviderServices 获取空间服务。
公共方法 GetSpatialServices(DbProviderInfo) 为 DbProviderServices 获取空间服务。
公共方法 GetType (继承自 Object。)
受保护的方法 MemberwiseClone (继承自 Object。)
公共方法 RegisterInfoMessageHandler 注册一个处理程序,以处理来自数据库提供程序的非错误消息。
受保护的方法 SetDbParameterValue 为给定的 TypeUsage 设置参数值和适当的方面。
公共方法 SetParameterValue 为给定的 TypeUsage 设置参数值和适当的方面。
公共方法 ToString (继承自 Object。)

顶部

扩展方法 

  名称 描述
公共扩展方法 GetService(Type) 已重载。 调用 GetService(Type, Object),以传递给定类型参数并对名称参数使用 null。 (由 DbDependencyResolverExtensions 定义。)
公共扩展方法 GetService<T>() 已重载。 调用 GetService(Type, Object),将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 (由 DbDependencyResolverExtensions 定义。)
公共扩展方法 GetService<T>(Object) 已重载。 调用 GetService(Type, Object),将该方法的泛型类型和给定名称作为参数传递。 (由 DbDependencyResolverExtensions 定义。)
公共扩展方法 GetServices(Type) 已重载。 调用 GetServices(Type, Object),以传递给定类型参数并对名称参数使用 null。 (由 DbDependencyResolverExtensions 定义。)
公共扩展方法 GetServices<T>() 已重载。 调用 GetServices(Type, Object),将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 (由 DbDependencyResolverExtensions 定义。)
公共扩展方法 GetServices<T>(Object) 已重载。 调用 GetServices(Type, Object),将该方法的泛型类型和给定名称作为参数传递。 (由 DbDependencyResolverExtensions 定义。)

顶部

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

请参阅

参考

System.Data.Entity.Core.Common 命名空间