DataContext.GetCommand(IQueryable) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá informace o příkazech SQL generovaných 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
Parametry
- query
- IQueryable
Dotaz, jehož informace o příkazu SQL mají být načteny.
Návraty
Požadovaný objekt informací o příkazu.
Příklady
// 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()
Poznámky
Tato metoda je pouze getter a nemá vliv na DataContext stav.
Mějte na paměti následující aspekty:
Argument musí být jiný než null. V opačném případě je vyvolán výjimka argumentu null.
Pro dotaz, který nelze přeložit, se vztahují běžné výjimky překladu dotazů vyvolané při provádění dotazu LINQ to SQL.
Vrátí se pouze první příkaz dotazu. Konkrétně nejsou zahrnuty další příkazy, které se používají k nedočkavému načítání (LoadWith).
DataContext nesleduje, co uživatel pomocí příkazu dělá. Například výsledky spuštění vráceného příkazu nejsou sledovány a nemají vliv na DataContext stav.