c# - 如何使用 C# mongodb 在 linq 中使用小写字母

标签 c# mongodb linq

我正在尝试使用小写字母创建 linq 查询,当时它在 C# MongoDB 中出现错误 错误看起来像 {document}{Queue}.ToString().ToLower() 不受支持。

这是我的代码

(from c in Collection.AsQueryable()
 where c["Projects"]["_id"] == ProjectId && c["Name"].ToString().ToLower() == Name.ToLower
 select c).ToList();

谢谢, 帕里`

最佳答案

这是因为 IQueryProvider 无法识别如何处理链式方法 try to drop ToString() 或者使用以下语法,因为在 mongodriver 中实现并解释 类似下面的内容

MongoCollection.FindAsync(c=>c.Name.ToLower()==name.ToLower()) 

我确定这应该有效,因为如果您看一下 PredicateTranslate.cs在 mongodriver 你会发现 mongo 可以解释的方法

关于c# - 如何使用 C# mongodb 在 linq 中使用小写字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43001405/

相关文章:

java - 使用 Java 修改 MongoDB 数组

javascript - 通过 Meteor 将新对象添加到 Mongo 文档中的数组中

arrays - MongodB $从数组中只拉一个元素

c# - 如何选择 LINQ GroupBy 子句中的最后一条记录

.net - Linq to XML 简单查询

c# - 如何扩展 Html.Raw 以在显示前清理危险的 HTML 数据

c# - 处理未定义抽象方法C#的调用

c# - 无法将 int 转换为 bool

c# - C# 中的 Diff b/w ref 和 out 参数

c# - 如何将此查询写成 lambda 表达式?