Метод SqlCeCommand.ExecuteReader (CommandBehavior)
Передает команду CommandText соединению Connection и создает экземпляр SqlCeDataReader с одним из значений CommandBehavior.
Пространство имен: System.Data.SqlServerCe
Сборка: System.Data.SqlServerCe (в System.Data.SqlServerCe.dll)
Синтаксис
'Декларация
Public Function ExecuteReader ( _
behavior As CommandBehavior _
) As SqlCeDataReader
'Применение
Dim instance As SqlCeCommand
Dim behavior As CommandBehavior
Dim returnValue As SqlCeDataReader
returnValue = instance.ExecuteReader(behavior)
public SqlCeDataReader ExecuteReader(
CommandBehavior behavior
)
public:
SqlCeDataReader^ ExecuteReader(
CommandBehavior behavior
)
member ExecuteReader :
behavior:CommandBehavior -> SqlCeDataReader
public function ExecuteReader(
behavior : CommandBehavior
) : SqlCeDataReader
Параметры
- behavior
Тип: System.Data.CommandBehavior
Одно из значений CommandBehavior.
Возвращаемое значение
Тип: System.Data.SqlServerCe.SqlCeDataReader
Объект SqlCeDataReader.
Исключения
Исключение | Условие |
---|---|
InvalidOperationException | Не удается выполнить команду в контексте транзакции, который отличается от контекста, в котором первоначально было прикреплено соединение. |
Замечания
Объект SqlCeDataReader поддерживает специальный режим, который обеспечивает возможность эффективного чтения больших значений типа binary. Дополнительные сведения см. в параметре SequentialAccess для класса CommandBehavior.
Если SqlCeDataReader занят, то связанное соединение SqlCeConnection занято обслуживанием SqlCeDataReader. В этом состоянии, пока не будет вызван метод Close класса SqlCeDataReader, с объектом SqlCeConnection можно выполнить только операцию Close.
Примеры
В следующем примере создается объект SqlCeCommand, а затем команда выполняется с передачей инструкции SELECT и объекта SqlCeConnection. Свойству CommandBehavior присваивается значение CloseConnection.
Dim conn As New SqlCeConnection(connString)
Dim cmd As New SqlCeCommand("SELECT * FROM myTable", conn)
cmd.Connection.Open()
Dim rdr As SqlCeDataReader = Nothing
Try
' Execute the reader; make sure you alway close the
' reader after you're done using it (ideally in the finally block)
'
rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)
While rdr.Read()
Console.WriteLine(rdr.GetString(0))
End While
Finally
' Closing the reader will also close the associated connection
'
rdr.Close()
End Try
SqlCeConnection conn = new SqlCeConnection(connString);
SqlCeCommand cmd = new SqlCeCommand("SELECT * FROM myTable", conn);
cmd.Connection.Open();
SqlCeDataReader rdr = null;
try
{
// Execute the reader; make sure you alway close the
// reader after you're done using it (ideally in the finally block)
//
rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
while (rdr.Read())
{
Console.WriteLine(rdr.GetString(0));
}
}
finally
{
// Closing the reader will also close the associated connection
//
rdr.Close();
}