c# – 使用if语句的LINQ WHERE子句
发布时间:2020-12-15 07:58:10 所属栏目:百科 来源:网络整理
导读:我正在使用c#.net 我有两个文本框,if!empty需要成为LINQ查询中WHERE子句的一部分. 这是我的代码 var result = from a in xxxx select a;if(!string.IsNullOrEmpty(personName)){ return result.Where(a = a.forename.Contains(personName) || a.surname.Con
我正在使用c#.net
我有两个文本框,if!empty需要成为LINQ查询中WHERE子句的一部分. 这是我的代码 var result = from a in xxxx select a; if(!string.IsNullOrEmpty(personName)) { return result.Where(a >= a.forename.Contains(personName) || a.surname.Contains(personName) } else if(!string.IsNullOrEmpty(dateFrom)) { return result.Where(a >= a.appStartDateTime >= dateFrom.Date) } else if(!string.IsNullOrEmpty(personName) && !string.IsNullOrEmpty(dateFrom)) { return result.Where(a >= a.forename.Contains(personName) || a.surname.Contains(personName) && a.appStartDateTime >= dateFrom.Date); } 我认为这会起作用,但它不喜欢.Where和我无法访问’a’,例如a.forename(名称’a’在当前上下文中不存在) 我出了什么问题,或者实际上不能做到这一点? 在此先感谢您的帮助. 克莱尔 解决方法
而不是这个:
result.Where(a.forename.Contains(personName)) 试试这个: result.Where(a => a.forename.Contains(personName)) 您似乎缺少Lambda运算符(=>). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |