Ahm*_*med 0 c# linq extension-methods
我有一个如下所示的表(它是一个审计表,包含来自不同表的数据)和其他一些列:我试图从审计表中获取所有值,其中表名列包含具有 top 且 EntiryId 为 1007 的表和通知栏
Table Name EntityId
AllTOP 1007
ProductTOP 1007
ProductTOP 1008
ProductTOP 1007
UserRoleTOP 1007
UserRoleTOP 1008
UserRoleTOP 1007
RequestTypeTOP 1007
Notifications 1014
Notifications 1015
Notifications 1016
Run Code Online (Sandbox Code Playgroud)
我试过如下:
var logList = _dbcontext.Audits.Where(e => e.TableName.Contains("TOP") && e.EntityId == 1007.ToString()).ToList()
Run Code Online (Sandbox Code Playgroud)
此查询为我提供了包含 top 的值的结果,但是当我尝试添加另一个条件以从通知中获取所有值时,我收到“枚举未返回结果”。这是我的尝试
var logList = _dbcontext.Audits.Where(e => e.TableName.Contains("TOP") && e.EntityId == 1007.ToString() && e.TableName.Contains("Notifications")).ToList()
Run Code Online (Sandbox Code Playgroud)
我的错误是什么?
你可能正在寻找这个:
var logList = _dbcontext.Audits
.Where(e => (e.TableName.Contains("TOP") || e.TableName.Contains("Notifications"))
&& e.EntityId == 1007.ToString()).ToList()
Run Code Online (Sandbox Code Playgroud)
列名应与逻辑 OR (||) 连接,而不是 AND (&&)。这是假设EnitityId条件应该存在,无论它是Top或Notifications。
| 归档时间: |
|
| 查看次数: |
67 次 |
| 最近记录: |