Поделиться через


DataContext.GetCommand(IQueryable) Метод

Определение

Возвращает сведения о командах SQL, созданных 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

Параметры

query
IQueryable

Запрос, сведения о команде SQL которого должны быть извлечены.

Возвращаемое значение

Запрошенный объект данных команды.

Примеры

// 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()

Комментарии

Этот метод является только методом получения и не влияет на DataContext состояние.

Обратите внимание на следующие моменты:

  • Аргумент должен иметь значение, отличное от NULL. В противном случае создается исключение аргумента NULL.

  • Обычные исключения преобразования запросов, создаваемые во время выполнения LINQ to SQL запроса, применяются к запросу, который не может быть преобразован.

  • Возвращается только первая команда запроса. В частности, дополнительные команды, используемые для неотложной загрузки (LoadWith), не включаются.

  • DataContext не отслеживает действия пользователя с помощью команды . Например, результаты выполнения возвращаемой команды не отслеживаются и не влияют на DataContext состояние.

Применяется к