【发布时间】:2018-01-13 07:15:57
【问题描述】:
我正在使用 asp.net web forms 4.5 版本。
我在使用 linq 时遇到问题。 我想带一个表格数据..(我不想加入它..因为我希望它被gridview的自动删除和自动编辑按钮删除和编辑)
但是我迷失了 linq。
我想做这样的事情..
public Iqueryable detailGrid_getData(){
string fromDStr = fromTBox.Text;
DateTime fromD = Convert.ToDateTime(fromDStr);
string toDStr = toTBox.Text;
DateTime toD = Convert.ToDateTime(toDStr);
var items = from s in db.salesOrderDetail_T where
db.salesOrder_T
.Select(so => so.poDate <= toD && so.poDate >=fromD)
.Contatins(s.soIdx) && s.stat == stat;
return items;
}
我从这里得到了这个想法:LINQ, select ID from Table where it does not match ID in another table
但由于某种原因,它不起作用。 有人能告诉我为什么这不起作用吗?
edit : 它表示查询主体必须以 select 子句或 group 子句结尾
【问题讨论】:
-
怎么样,到底是不是不行?你能用至少可以编译的代码替换你的代码吗?目前,这是非法的。一些示例问题 - 缺少分号,使用
Select创建Boolean的 IEnumerable,在没有布尔搜索对象的IEnumerable<Boolean>上使用.Contains(我假设s.soIdx不是布尔值,使用没有以 select 子句结尾。 -
我建议解决问题 - 首先尝试使用 LINQPad 或控制台应用程序(从等式中消除 ASP.NET)查询数据,看看是否可行。另见stackoverflow.com/help/mcve