草庐IT

c# - Mongodb C# 查找异步。使用linq过滤文档内的列表

我有一个mongodb,我想过滤文档列表中的一个值。我的文档看起来像这样:{"_id":"guid","mylist":{"stuff":"a","morestuff":"b"}}我想通过在FindAsync方法中使用linq表达式来查找“mylist”中的“stuff”为“a”的文档。到目前为止我的最大努力:collection.FindAsync(item=>item.mylist.Where(item2=>item2.stuff=="a"))不幸的是,C#不接受这个声明,我收到以下错误:Cannotimplicitlyconverttype"System.Collections.

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

我正在尝试使用小写字母创建linq查询,当时它在C#MongoDB中出现错误错误看起来像{document}{Queue}.ToString().ToLower()不受支持。这是我的代码(fromcinCollection.AsQueryable()wherec["Projects"]["_id"]==ProjectId&&c["Name"].ToString().ToLower()==Name.ToLowerselectc).ToList();谢谢,帕里` 最佳答案 这是因为IQueryProvider无法识别如何处理链式方法tr

c# - 我如何编写 linq 来比较年月 f

我正在尝试从我的数据库中获取年份和月份的记录我已经写了以下linqConnectioncn=newConnection();IMongoDatabasedb=cn.ConnectionString();varcollection=db.GetCollection("Holiday");varfilter=Builders.Filter.Eq("business_id",businessid);try{varobj=collection.Find(filter).ToListAsync();if(obj!=null&&obj.Result!=null){if(month=="All"){

用LINQ查询弄平一个集合

弄平产生看起来像这样的集合的查询的最佳方法是什么?我想产生一个linq查询或表达式,而不是两个行,而不是同一列中具有工具值和指南针值的LINQ查询或表达式。ClaimType|ClaimValueTarget|Tools;Compass任何想法,我都对此充满了大脑云!看答案这是我这样做的方式:varclaims=new[]{new{ClaimType="RedirectUrl",ClaimValue="https://www.thing.com/"},new{ClaimType="Target",ClaimValue="Tools"},new{ClaimType="Target",ClaimV

要简化组的LINQ语法,请订购并选择顶部1

我在交易类中有几个数据,如以下一个:publicclassDeal{publicintId{get;set;}publicintSiteEdition{get;set;}publicDateTimeDate{get;set;}}我试图通过“ID”和“站点”对它们进行分组;在每个组中,按日期订购,然后选择顶级1个数据。我的代码就像:ListdealList=newList();dealList.Add(newDeal(){Id=123,SiteEdition=1,Date=newDateTime(2017,6,1)});dealList.Add(newDeal(){Id=123,SiteEdit

c# - FluentMongo LINQ : How to query a sublist of a class

假设我有这样一个类:publicclassBOa{publicObjectIdId{get;set;}publicstringName{get;set;}publicListVisiteEffettuate=newList();}publicclassBOvalues{publicDateTimeData{get;set;}publicintAge{get;set;}publicintScore{get;set;}}明确地说,在MongoDB中,我有许多BOa的集合。他们每个人都包含许多(一系列......)BOvalues我想知道如何使用FluentMongoLINQ(或其他方法)获

mongodb - 如何通过比较子字段构造 MongoDB Linq Any() 查询

我正在尝试构建以下嵌套查询,以便它将在我的C#实体上运行,但通过C#驱动程序正确转换为MongoDB查询;lpn=newList{newPN("/standard"),newPN("/my")};nCollection.AsQueryable(o=>o.pns.Any(pf=>lpn.Any(pn=>pn.n==pf.n))所以这是有效的C#。我正在尝试将值数组与值数组进行匹配,但我在驱动程序堆栈中遇到此错误;ResultMessage:TestmethodMyLib.Tests.Models.ProjectTest.DBImportExcelProjectthrewexception

c# - Linq to Mongodb动态更新函数

我正在尝试使用泛型动态更新集合。我有一个可行的解决方案:MongoCollectionsymbolcollection=database.GetCollection("Symbols")varquery3=Query.EQ(e=>e.Id,("0000000000021325640.0");varupdate=Update.Set(e=>e.Name,"abc");//updatemodifierssymbolcollection.Update(query3,update);但我的问题是如何在不显式声明集合类型的情况下动态更新集合中的项目?我试过这样的:varquery=Query.E

mongodb - LINQ Select on GroupBy in MongoDB C# driver 2.1

我在使用运行Mongo3.0的2.1C#驱动程序的Mongo上遇到以下LINQ表达式问题。选择Id可以正常工作,但不能选择A。以下简单测试演示了我遇到的错误。Specifiedmethodisnotsupported.atMongoDB.Driver.Linq.Processors.AccumulatorBinder.GetAccumulatorArgument(Expressionnode)如果不支持,有什么建议可以解决它而不必先展开可查询的吗?我知道我可以使用mongo聚合框架,但这不是我们想要的,因为我们在这里没有接触到它,而且我不希望在这个级别使用mongo特定语法。[Test

c# - 使用 LINQ/C# 在 MongoDB 集合中定位子对象

我正在尝试编写一段代码,使用Linq在MongoDB集合中查找对象。这是我的代码:classProgram{staticvoidMain(string[]args){varclient=newMongoClient();vardb=client.GetDatabase("SoundsDB");varcollection=db.GetCollection("SoundsCollection");stringmyID="0vvyXSoSHI";varmyObjects=collection.Find(b=>b.objectId==myID);}}publicclassSound{publi