Есть ли способ вызвать встроенную функцию sql в Linq to Entities - PullRequest
1 голос
/ 10 января 2012

Я хочу знать, есть ли способ вызвать встроенные функции sql в LINQ to Entities?Такие как 'CAST', 'ISNULL'.Я искал в Интернете и знаю, как вызывать пользовательские функции в LINQ to Entities, но я не знаю, как вызывать встроенные функции.Конечно, некоторые встроенные функции могут быть вместо этого с помощью метода CLR, но я буду признателен, если у вас есть способ вызвать их напрямую.

1 Ответ

1 голос
/ 08 августа 2012

SqlFunctions Class - Предоставляет методы общеязыковой среды выполнения (CLR), которые вызывают функции в базе данных в запросах LINQ to Entities.

Как использовать

using (AdventureWorksEntities AWEntities = new AdventureWorksEntities())
{
    // SqlFunctions.CharIndex is executed in the database.
    var contacts = from c in AWEntities.Contacts
                   where SqlFunctions.CharIndex("Si", c.LastName) == 1
                   select c;

    foreach (var contact in contacts)
    {
        Console.WriteLine(contact.LastName);
    }
}
...