EntityDataReader 类

定义

从数据源中读取行的只进流。

public ref class EntityDataReader : System::Data::Common::DbDataReader, System::Data::IExtendedDataRecord
public class EntityDataReader : System.Data.Common.DbDataReader, System.Data.IExtendedDataRecord
type EntityDataReader = class
    inherit DbDataReader
    interface IExtendedDataRecord
    interface IDataRecord
Public Class EntityDataReader
Inherits DbDataReader
Implements IExtendedDataRecord
继承
实现

注解

组合了 DbDataReader 类和 IExtendedDataRecord 接口的功能。

EntityDataReader 没有公共构造函数。 只能通过方法之 EntityCommand.ExecuteReader 一重载来获取它。

SQL Server 因此,为了获取输出参数值,应用程序必须耗用所有结果集中的所有记录。 如果应用程序关闭 EntityDataReader(这将同时关闭 DbDataReader),那么输出参数可能未填充值。

EntityDataReader 不会隐式耗用结果集以使输出参数可用。 因此,请注意以下几点:

有关代码示例,请参阅 使用 EntityClient

属性

DataRecordInfo

获取此 DataRecordInfoIExtendedDataRecord

Depth

获取一个值,该值指示当前行的嵌套深度。

FieldCount

获取当前行中的列数。

HasRows

获取一个值,该值指示此 EntityDataReader 是否包含一个或多个行。

IsClosed

获取一个值,该值指示 EntityDataReader 是否已关闭。

Item[Int32]

Object 实例的形式获取指定列的值。

Item[String]

Object 实例的形式获取指定列的值。

RecordsAffected

通过执行 SQL 语句获取更改、插入或删除的行数。

VisibleFieldCount

获取 EntityDataReader 中未隐藏的字段的数目。

方法

Close()

关闭 EntityDataReader 对象。

CloseAsync()

异步关闭 DbDataReader 对象。

(继承自 DbDataReader)
CreateObjRef(Type)

创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。

(继承自 MarshalByRefObject)
Dispose()

释放 DbDataReader 类的当前实例所使用的所有资源。

(继承自 DbDataReader)
Dispose(Boolean)

释放由此 EntityDataReader 占用的资源并调用 Close()

DisposeAsync()

异步释放 DbDataReader 类的当前实例所使用的所有资源。

(继承自 DbDataReader)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetBoolean(Int32)

获取指定列的布尔值形式的值。

GetByte(Int32)

以字节的形式获取指定列的值。

GetBytes(Int32, Int64, Byte[], Int32, Int32)

从指定列读取一个字节流(从 dataIndex 指示的位置开始),读到缓冲区中(从 bufferIndex 指示的位置开始)。

GetChar(Int32)

作为单个字符获取指定列的值。

GetChars(Int32, Int64, Char[], Int32, Int32)

从指定列读取一个字符流,从 dataIndex 指示的位置开始,读到缓冲区中,从 bufferIndex 指示的位置开始。

GetColumnSchemaAsync(CancellationToken)

这是 GetColumnSchema(DbDataReader) 的异步版本。 提供程序应使用合适的实现进行重写。 可以选择接受 cancellationToken。 默认实现调用同步 GetColumnSchema(DbDataReader) 调用并返回已完成任务。 如果传递到已取消 cancellationToken,则默认实现将返回已取消的任务。 GetColumnSchema(DbDataReader) 引发的异常将通过任务异常属性传递。

(继承自 DbDataReader)
GetData(Int32)

返回所请求列的嵌套数据读取器。

(继承自 DbDataReader)
GetDataReader(Int32)

DbDataReader 对象的形式返回嵌套的读取器。

GetDataRecord(Int32)

返回嵌套的 DbDataRecord

GetDataTypeName(Int32)

获取指定列的数据类型的名称。

GetDateTime(Int32)

DateTime 对象的形式获取指定列的值。

GetDbDataReader(Int32)

返回被请求的列序号的 DbDataReader 对象,可以使用提供程序特定的实现对该对象进行重写。

GetDecimal(Int32)

Decimal 对象的形式获取指定列的值。

GetDouble(Int32)

获取作为双精度浮点数的指定列的值。

GetEnumerator()

返回一个可用于循环访问数据读取器中的行的 IEnumerator

GetFieldType(Int32)

获取指定列的数据类型。

GetFieldValue<T>(Int32)

获取指定列的值作为请求的类型。

(继承自 DbDataReader)
GetFieldValueAsync<T>(Int32)

异步获取指定列的值作为请求的类型。

(继承自 DbDataReader)
GetFieldValueAsync<T>(Int32, CancellationToken)

异步获取指定列的值作为请求的类型。

(继承自 DbDataReader)
GetFloat(Int32)

以单精度浮点数字的形式获取指定列的值。

GetGuid(Int32)

以全局唯一标识符 (GUID) 的形式获取指定列的值。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetInt16(Int32)

获取指定列的 16 位有符号整数形式的值。

GetInt32(Int32)

获取指定列的 32 位带符号整数形式的值。

GetInt64(Int32)

以 64 位有符号整数的形式获取指定列的值。

GetLifetimeService()
已过时.

检索控制此实例的生存期策略的当前生存期服务对象。

(继承自 MarshalByRefObject)
GetName(Int32)

在给定从零开始的列序号时获取该列的名称。

GetOrdinal(String)

在给定列名时获取相应的列序号。

GetProviderSpecificFieldType(Int32)

返回指定列的提供程序特定的字段类型。

GetProviderSpecificValue(Int32)

Object 实例的形式获取指定列的值。

GetProviderSpecificValues(Object[])

在当前行的集合中获取提供程序特定的所有属性列。

GetSchemaTable()

返回一个 DataTable,它描述 DbDataReader 的列元数据。

GetSchemaTableAsync(CancellationToken)

这是 GetSchemaTable() 的异步版本。 提供程序应使用合适的实现进行重写。 可以选择接受 cancellationToken。 默认实现调用同步 GetSchemaTable() 调用并返回已完成任务。 如果传递到已取消 cancellationToken,则默认实现将返回已取消的任务。 GetSchemaTable() 引发的异常将通过任务异常属性传递。

(继承自 DbDataReader)
GetStream(Int32)

获取从指定列检索数据的流。

(继承自 DbDataReader)
GetString(Int32)

String 实例的形式获取指定列的值。

GetTextReader(Int32)

获取文本读取器以从列中检索数据。

(继承自 DbDataReader)
GetType()

获取当前实例的 Type

(继承自 Object)
GetValue(Int32)

Object 实例的形式获取指定列的值。

GetValues(Object[])

使用当前行的列值来填充对象数组。

InitializeLifetimeService()
已过时.

获取生存期服务对象来控制此实例的生存期策略。

(继承自 MarshalByRefObject)
IsDBNull(Int32)

获取一个值,该值指示列中是否包含不存在或丢失的值。

IsDBNullAsync(Int32)

异步获取一个值,该值指示列中是否包含不存在的或缺少的值。

(继承自 DbDataReader)
IsDBNullAsync(Int32, CancellationToken)

异步获取一个值,该值指示列中是否包含不存在的或缺少的值。

(继承自 DbDataReader)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
MemberwiseClone(Boolean)

创建当前 MarshalByRefObject 对象的浅表副本。

(继承自 MarshalByRefObject)
NextResult()

在读取一批语句的结果时,使读取器前进到下一个结果。

NextResultAsync()

在读取一批语句的结果时,使读取器异步前进到下一个结果。

(继承自 DbDataReader)
NextResultAsync(CancellationToken)

在读取一批语句的结果时,使读取器异步前进到下一个结果。

(继承自 DbDataReader)
Read()

使读取器前进到结果集中的下一条记录。

ReadAsync()

使读取器异步前进到结果集中的下一条记录。

(继承自 DbDataReader)
ReadAsync(CancellationToken)

使读取器异步前进到结果集中的下一条记录。

(继承自 DbDataReader)
ToString()

返回表示当前对象的字符串。

(继承自 Object)

显式接口实现

IDataRecord.GetData(Int32)

有关此成员的说明,请参见 GetData(Int32)

(继承自 DbDataReader)

扩展方法

CanGetColumnSchema(DbDataReader)

获取一个值,指示 DbDataReader 是否可以获取列架构。

GetColumnSchema(DbDataReader)

获取 DbDataReader 的列架构(DbColumn 集合)。

Cast<TResult>(IEnumerable)

IEnumerable 的元素强制转换为指定的类型。

OfType<TResult>(IEnumerable)

根据指定类型筛选 IEnumerable 的元素。

AsParallel(IEnumerable)

启用查询的并行化。

AsQueryable(IEnumerable)

IEnumerable 转换为 IQueryable

适用于