DataContext.GetCommand(IQueryable) Méthode

Définition

Obtient les informations sur les commandes SQL générées par LINQ to SQL.

public:
 System::Data::Common::DbCommand ^ GetCommand(System::Linq::IQueryable ^ query);
public System.Data.Common.DbCommand GetCommand(System.Linq.IQueryable query);
member this.GetCommand : System.Linq.IQueryable -> System.Data.Common.DbCommand
Public Function GetCommand (query As IQueryable) As DbCommand

Paramètres

query
IQueryable

Requête dont les informations de commande SQL doivent être récupérées.

Retours

Objet d’informations de commande demandé.

Exemples

// using System.Data.Common;
Northwnd db = new Northwnd(@"c:\northwnd.mdf");

var q =
    from cust in db.Customers
    where cust.City == "London"
    select cust;

Console.WriteLine("Customers from London:");
foreach (var z in q)
{
    Console.WriteLine("\t {0}",z.ContactName);
}

DbCommand dc = db.GetCommand(q);
Console.WriteLine("\nCommand Text: \n{0}",dc.CommandText);
Console.WriteLine("\nCommand Type: {0}",dc.CommandType);
Console.WriteLine("\nConnection: {0}",dc.Connection);

Console.ReadLine();
' Imports System.Data.Common

Dim db As New Northwnd("c:\northwnd.mdf")

Dim q = _
From cust In db.Customers _
Where cust.City = "London" _
Select cust

Console.WriteLine("Customers from London:")
For Each z As Customer In q
    Console.WriteLine(vbTab & z.ContactName)
Next

Dim dc As DbCommand = db.GetCommand(q)
Console.WriteLine(Environment.NewLine & "Command Text: " & Environment.NewLine & dc.CommandText)
Console.WriteLine(Environment.NewLine & "Command Type: {0}", dc.CommandType)
Console.WriteLine(Environment.NewLine & "Connection: {0}", dc.Connection)

Console.ReadLine()

Remarques

Cette méthode n’est qu’un getter et n’affecte DataContext pas l’état.

Tenez compte des points suivants :

  • L’argument doit être non null. Sinon, une exception d’argument Null est levée.

  • Les exceptions de traduction de requête normale levées pendant l’exécution de requête LINQ to SQL s’appliquent à une requête qui ne peut pas être traduite.

  • Seule la première commande de requête est retournée. Plus précisément, les commandes supplémentaires utilisées pour le chargement désireux (LoadWith) ne sont pas incluses.

  • DataContext ne suit pas ce que fait l’utilisateur avec la commande. Par exemple, les résultats de l’exécution de la commande retournée ne sont pas suivis et n’affectent DataContext pas l’état.

S’applique à