Freigeben über


SqlCeCommand.ExecuteReader-Methode (CommandBehavior)

Sendet die CommandText-Eigenschaft an die Connection-Klasse und erstellt eine SqlCeDataReader-Klasse mit einem der CommandBehavior-Werte.

Namespace:  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Syntax

'Declaration
Public Function ExecuteReader ( _
    behavior As CommandBehavior _
) As SqlCeDataReader
'Usage
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

Parameter

Rückgabewert

Typ: System.Data.SqlServerCe.SqlCeDataReader
Ein SqlCeDataReader-Objekt.

Ausnahmen

Ausnahme Bedingung
InvalidOperationException

Ein Befehl in einem Transaktionskontext, der von dem Kontext abweicht, in dem die Verbindung ursprünglich eingetragen wurde, kann nicht ausführt werden.

Hinweise

Die SqlCeDataReader-Klasse unterstützt einen speziellen Modus, in dem große Binärwerte effizient gelesen werden können. Weitere Informationen finden Sie unter der SequentialAccess-Einstellung für CommandBehavior.

Während die SqlCeDataReader-Klasse verwendet wird, ist die zugeordnete SqlCeConnection-Klasse durch den Informationsfluss für die SqlCeDataReader-Klasse belegt. In diesem Zustand können Sie lediglich die Close-Operation für die SqlCeConnection-Klasse ausführen, es sei denn, Sie rufen die Close-Methode der SqlCeDataReader-Klasse auf.

Beispiele

Im folgenden Beispiel wird eine SqlCeCommand-Klasse erstellt und anschließend ausgeführt. Hierzu werden eine SQL-SELECT-Anweisung und ein SqlCeConnection-Objekt übergeben. Die CommandBehavior-Enumeration wird auf CloseConnection festgelegt.

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();
}

Siehe auch

Verweis

SqlCeCommand Klasse

ExecuteReader-Überladung

System.Data.SqlServerCe-Namespace