有没有办法在Linq to Entities中调用内置的sql函数

时间:2012-01-10 06:19:12

标签: linq built-in sql-function

我想知道是否有办法在LINQ to Entities中调用内置的sql函数?例如'CAST''ISNULL'。我在互联网上搜索过,我知道如何在LINQ to Entities中调用用户定义的函数,但我不知道如何调用内置函数。当然,一些内置函数可以通过CLR方法代替,但如果你有办法直接调用它们,我将不胜感激。

1 个答案:

答案 0 :(得分:1)

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);
    }
}