我正在尝试根据特定声明的值过滤用户。
我使用 ASP .Net Core 3 和 RavenDB。
filteredData = data.Search(d => d.Email, model.search.value)
.Search(d => d.LastName, model.search.value)
.Search(d => d.FirstName, model.search.value)
.Search(d => d.Claims.FirstOrDefault(c => c.ClaimType == "Role"), model.search.value);
这不起作用。这是错误消息:System.InvalidOperationException: 'Cannot understand how to translate d.Claims.FirstOrDefault(c => (c.ClaimType == "Role"))'
感谢您的帮助。
最佳答案
更换 Search
与 Where
.
filteredData = data.Search(d => d.Email, model.search.value)
.Search(d => d.LastName, model.search.value)
.Search(d => d.FirstName, model.search.value)
.Where(d => d.Claims.FirstOrDefault(c => c.ClaimType == "Role"));
关于c# - 在 claim 中搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63306123/