C# LINQ到SQL-查询精确值
我有一个查询,它将检索number>15,但当我尝试指定一个精确的值时,例如“=”2“,我会得到错误C# LINQ到SQL-查询精确值,c#,.net,sql-server,windows,linq,C#,.net,Sql Server,Windows,Linq,我有一个查询,它将检索number>15,但当我尝试指定一个精确的值时,例如“=”2“,我会得到错误 DataClasses1DataContext db = new DataClasses1DataContext(); var returnunits15 = from p in db.Products where p.UnitPrice > 15 // If unit price is greater than 15...
DataClasses1DataContext db = new DataClasses1DataContext();
var returnunits15 = from p in db.Products
where p.UnitPrice > 15 // If unit price is greater than 15...
select p; // select entries
例如,我如何调整查询以查找准确的字符串,例如“test”
及
例如20的精确值。单价是十进制的 无法将数字类型与字符串进行比较。
如果要检查数字类型是否相等,则不需要使用“”引号
DataClasses1DataContext db = new DataClasses1DataContext();
var returnunits15 = from p in db.Products
where p.UnitPrice == 20
select p;
您只需要在字符串比较中使用引号。您得到的错误到底是什么?您的意思肯定是
p.UnitPrice==20
,否?;)@亚历克斯·阿扎(Alex Aza)很抱歉,这是个坏例子。但是如果是UnitName,你怎么能搜索一个字符串呢?@James-对于字符串比较,你要做p.UnitName==“test”
@James:你要把p.UnitName==“whateverName”
@Alex Aza我以前试过这个,但在做的时候仍然得到同样的错误:“运算符'=='不能应用于'decimal'和'string'类型的操作数”