SqlCeDataReader Class
Указывает способ считывания потока строк данных из источника данных с возможностью перемещения только вперед. Этот класс не может быть унаследован.
Пространство имен: System.Data.SqlServerCe
Сборка: System.Data.SqlServerCe (в system.data.sqlserverce.dll)
Синтаксис
'Декларация
<DefaultMemberAttribute("Item")> _
Public Class SqlCeDataReader
Inherits DbDataReader
[DefaultMemberAttribute("Item")]
public class SqlCeDataReader : DbDataReader
[DefaultMemberAttribute(L"Item")]
public ref class SqlCeDataReader : public DbDataReader
/** @attribute DefaultMemberAttribute("Item") */
public class SqlCeDataReader extends DbDataReader
DefaultMemberAttribute("Item")
public class SqlCeDataReader extends DbDataReader
Замечания
Создание модуля чтения данных SqlCeDataReader необходимо производить не прямым использованием конструктора, а вызовом метода ExecuteReader объекта SqlCeCommand.
Если SqlCeDataReader занят, то связанное соединение SqlCeConnection занято обслуживанием SqlCeDataReader. В этом состоянии в одном и том же соединении может быть создано несколько модулей чтения.
Изменения, которые были сделаны в результирующем наборе другим процессом или потоком во время считывания данных, с некоторой вероятностью могут быть видны пользователю модуля чтения данных SqlCeDataReader, хотя это зависит от того, когда именно эти изменения произошли.
IsClosed и RecordsAffected являются единственными свойствами, к которым могут производиться обращения после закрытия SqlCeDataReader. Хотя к свойству RecordsAffected можно обращаться в любое время, пока существует модуль чтения данных SqlCeDataReader, рекомендуется всегда вызывать метод Close перед получением значения свойства RecordsAffected, чтобы гарантировать точность возвращаемых значений.
Иерархия наследования
System.Object
System.MarshalByRefObject
System.Data.Common.DbDataReader
System.Data.SqlServerCe.SqlCeDataReader
System.Data.SqlServerCe.SqlCeResultSet
Пример
Следующий пример демонстрирует создание объектов SqlCeConnection, SqlCeCommand и SqlCeDataReader. В примере данные сначала считываются, а затем выводятся на консоль. После этого закрываются модуль чтения данных SqlCeDataReader и соединение SqlCeConnection.
Dim conn As SqlCeConnection = Nothing
Dim cmd As SqlCeCommand = Nothing
Dim rdr As SqlCeDataReader = Nothing
Try
' Open the connection and create a SQL command
'
conn = New SqlCeConnection("Data Source = AdventureWorks.sdf")
conn.Open()
cmd = New SqlCeCommand("SELECT * FROM DimEmployee", conn)
rdr = cmd.ExecuteReader()
' Iterate through the results
'
While rdr.Read()
Dim employeeID As Integer = rdr.GetInt32(0) ' or: rdr["EmployeeKey"];
Dim lastName As String = rdr.GetString(5) ' or: rdr["FirstName"];
End While
' Always dispose data readers and commands as soon as practicable
'
rdr.Close()
cmd.Dispose()
Finally
' Close the connection when no longer needed
'
conn.Close()
End Try
SqlCeConnection conn = null;
SqlCeCommand cmd = null;
SqlCeDataReader rdr = null;
try
{
// Open the connection and create a SQL command
//
conn = new SqlCeConnection("Data Source = AdventureWorks.sdf");
conn.Open();
cmd = new SqlCeCommand("SELECT * FROM DimEmployee", conn);
rdr = cmd.ExecuteReader();
// Iterate through the results
//
while (rdr.Read())
{
int employeeID = rdr.GetInt32(0); // or: rdr["EmployeeKey"];
string lastName = rdr.GetString(5); // or: rdr["FirstName"];
}
// Always dispose data readers and commands as soon as practicable
//
rdr.Close();
cmd.Dispose();
}
finally
{
// Close the connection when no longer needed
//
conn.Close();
}
Многопоточное использование
Все общие статические члены (Shared в Microsoft Visual Basic) этого типа можно использовать в многопоточных операциях. Безопасная многопоточная работа с членами экземпляров типа не гарантируется.
Платформы
Платформы разработки
Windows Vista, Windows Mobile 5.0, Windows XP Professional with Service Pack 2 (SP2), Windows Server 2003, Windows Mobile 2003 for Pocket PC, Windows CE 5.0
Сведения о версии
.NET Framework и NET Compact Framework
Поддерживается в версии 3.5
.NET Framework
Поддерживается в версии 3.0
.NET Compact Framework и .Net Framework
Поддерживается в версии 2.0