我有一个使用差异的SQL语句=> http://msdn.microsoft.com/en-us/library/ms188753.aspxLinq有“差异”吗?
我在存储过程中这样做,但我想更改为LINQ。在LINQ中有没有相同的区别?
例: WHERE (DIFFERENCE(C.LastName, ''' + @name + ''') >= 4
感谢
我有一个使用差异的SQL语句=> http://msdn.microsoft.com/en-us/library/ms188753.aspxLinq有“差异”吗?
我在存储过程中这样做,但我想更改为LINQ。在LINQ中有没有相同的区别?
例: WHERE (DIFFERENCE(C.LastName, ''' + @name + ''') >= 4
感谢
的System.Data.Objects.SqlFunctions具有(AFAIK)所有有用的T-SQL功能,如差分,探测法,像等 这些功能在翻译where子句通过LINQ2SQL到他们的T-SQL当量。
编辑:哎呀,这是4.0。对于那个很抱歉。也就是说,为此,您可以在数据库中创建一个用户定义的函数,并将该函数添加到您的DBML文件中,并像调用SqlMethods.Like(这是我正在考虑的那样)调用它。 Here's the MSDN docs on it。
基本上你只是创建一个UDF,它接受与DIFFERENCE相同的输入并返回相同的结果。该函数除了调用DIFFERENCE方法外什么也不做。然后你在你的DBML中公开这个,并在你的查询中使用你的函数。
没有,有没有这相当于是.NET方法。
.NET没有内置的Soundex功能。有关如何在C#中实现Soundex的信息,请参见this article,其中包括T-SQL的DIFFERENCE()函数使用的算法。
是的,有。 :) – 2009-06-25 01:48:45