我有一个简单的SQL语句。Linq to SQL“不喜欢”运算符
选择从表名不同的值,其中值不喜欢“%TEST%”
我怎样写这在LINQ to SQL语法。
我试过下面的说法,但它似乎没有工作。
var p = (from c in tablename where !(c.value.ToUpper().Contains("%TEST%"))
select c.Value).Distinct().ToList()
我有一个简单的SQL语句。Linq to SQL“不喜欢”运算符
选择从表名不同的值,其中值不喜欢“%TEST%”
我怎样写这在LINQ to SQL语法。
我试过下面的说法,但它似乎没有工作。
var p = (from c in tablename where !(c.value.ToUpper().Contains("%TEST%"))
select c.Value).Distinct().ToList()
问题在于“%” - 你正在寻找的东西,字面上不包含“%TEST%”,这可能是一切。我想你的意思是:
var p = (from c in tablename
where !c.Value.ToUpper().Contains("TEST")
select c.Value).Distinct().ToList()
如果你坚持的SQL相匹配的模式,你可以使用SqlMethods.Like
string pattern = "%TEST%";
...
from c in tablename
where !SqlMethods.Like(c.Value, pattern)
select c
你不需要使用%测试%的百分比中包含。 – 2010-08-18 14:50:57