ObjectQuery<T>.Execute(MergeOption) Metoda

Definicja

Wykonuje kwerendę obiektu z określoną opcją scalania.Executes the object query with the specified merge option.

public:
 System::Data::Objects::ObjectResult<T> ^ Execute(System::Data::Objects::MergeOption mergeOption);
public System.Data.Objects.ObjectResult<T> Execute (System.Data.Objects.MergeOption mergeOption);
override this.Execute : System.Data.Objects.MergeOption -> System.Data.Objects.ObjectResult<'T>

Parametry

mergeOption
MergeOption

MergeOption, które mają być używane podczas wykonywania zapytania.The MergeOption to use when executing the query. Wartość domyślna to AppendOnly.The default is AppendOnly.

Zwraca

ObjectResult<T>, który zawiera kolekcję obiektów Entity zwracanych przez zapytanie.An ObjectResult<T> that contains a collection of entity objects returned by the query.

Przykłady

Ten przykład jest oparty na Microsoft SQL Server przykładach produktu: Database.This example is based on the Microsoft SQL Server Product Samples: Database. Przykład zwraca ObjectResult<T> z metody Execute.The example returns an ObjectResult<T> from Execute method. Następnie Pobiera moduł wyliczający i wykonuje iterację w wyniku zapytania.Then it gets an enumerator and iterates through the query results. Na końcu zwalnia moduł wyliczający i obiekt ObjectResult<T>.At the end it releases the enumerator and the ObjectResult<T> object.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    ObjectSet<Product> query = context.Products;
    ObjectResult<Product> queryResults = null;

    System.Collections.IEnumerator enumerator = null;
    try
    {
        queryResults = query.Execute(MergeOption.AppendOnly);

        // Get the enumerator.
        enumerator = ((System.Collections.IEnumerable)queryResults).GetEnumerator();

        // Iterate through the query results.
        while (enumerator.MoveNext())
        {
            Product product = (Product)enumerator.Current;
            Console.WriteLine("{0}", product.Name);
        }
        // Dispose the enumerator
        ((IDisposable)enumerator).Dispose();
    }
    finally
    {
        // Dispose the query results and the enumerator.
        if (queryResults != null)
        {
            queryResults.Dispose();
        }
        if (enumerator != null)
        {
            ((IDisposable)enumerator).Dispose();
        }
    }
}
Using context As New AdventureWorksEntities()
    Dim query As ObjectSet(Of Product) = context.Products
    Dim queryResults As ObjectResult(Of Product) = Nothing

    Dim enumerator As System.Collections.IEnumerator = Nothing
    Try
        queryResults = query.Execute(MergeOption.AppendOnly)

        ' Get the enumerator. 
        enumerator = DirectCast(queryResults, System.Collections.IEnumerable).GetEnumerator()

        ' Iterate through the query results. 
        While enumerator.MoveNext()
            Dim product As Product = DirectCast(enumerator.Current, Product)
            Console.WriteLine("{0}", product.Name)
        End While
        ' Dispose the enumerator 
        DirectCast(enumerator, IDisposable).Dispose()
    Finally
        ' Dispose the query results and the enumerator. 
        If queryResults IsNot Nothing Then
            queryResults.Dispose()
        End If
        If enumerator IsNot Nothing Then
            DirectCast(enumerator, IDisposable).Dispose()
        End If
    End Try
End Using

Uwagi

Opcja scalania domyślnego dla kwerend obiektów jest AppendOnly.The default merge option for object queries is AppendOnly. Aby uzyskać więcej informacji, zobacz rozpoznawanie tożsamości, zarządzanie stanami i Change Tracking.For more information, see Identity Resolution, State Management, and Change Tracking.

Dotyczy

Zobacz też