首页 > 代码库 > C#对Mongodb数组对象操作

C#对Mongodb数组对象操作

Mongo对数据的存储非常随意,需要修改对象中的数组对象时,就会变得比较复杂。

类中的类对象可以直接通过“.”例如:Department.User.name

类中的对象User是数组时可以用Department.$.name写入数据,但是更新时就必须要用Department.1.name

这种写法要指明数组下表,看上去是不是觉得很刁。

附一段代码吧:便于理解

  var sspoper = jingjiaoperationday.sspoper.FirstOrDefault(e => e.opertype.Equals(operationtype) && e.ssp.Equals(ssp));
  if (sspoper != null)
  {
    var indexoper = jingjiaoperationday.sspoper.IndexOf(sspoper);
    var updatequery = Query.And(queryoperationday, Query.EQ("sspoper." + indexoper + ".opertype", operationtype), Query.EQ("sspoper." + indexoper + ".ssp", ssp));
    var setsspcount = Update.Set("sspoper." + indexoper + ".count", sspoper.count + 1);//当前操作量+1
    jingjiaOperationDay.Update(updatequery, setsspcount);
  }

 

C#对Mongodb数组对象操作