小编chr*_*dam的帖子

向List添加新对象不起作用

我想添加一个新的OldFlatFile,以OldFlatFileList该作品,但没有增加新的一个.我看不到错误,我不知道下面的代码是否有问题?

OldFlatFileList count与添加之前和之后相同:

    var selectedPackage = FlatFileHelper.GetSelectedPackage(OldFlatFileList);
    var primaryFeature = new PrimaryFeatures(){ DataTypeCode = "abc" };

    OldFlatFileList.ToList().Add(
    new OldFlatFile
    {
        new OldFlatFileEntry
        {
            InformationFields = selectedPackage.InformationFields,
            PrimaryFeatures = primaryFeature,
            SecondaryFeatures = null
        }
    });
Run Code Online (Sandbox Code Playgroud)
    private IEnumerable<OldFlatFile> OldFlatFileList
    {
        get { return Session[SystemConstant.OldFlatFileListKey] as List<OldFlatFile>; }
        set { Session[SystemConstant.OldFlatFileListKey] = value; }
    }
Run Code Online (Sandbox Code Playgroud)
    public class OldFlatFile : List<OldFlatFileEntry>
    {}
Run Code Online (Sandbox Code Playgroud)

c#

3
推荐指数
1
解决办法
2998
查看次数

如何在一个字节中转换bool数组,然后在bool数组中转换回来

我想在一个字节中打包最大长度为8的bool数组,通过网络发送,然后将其解压缩回bool数组.在这里试过一些解决方案,但它没有用.我正在使用Mono.

我制作了BitArray,然后尝试将其转换为字节

public static byte[] BitArrayToByteArray(BitArray bits)
    {
      byte[] ret = new byte[Math.Max(1, bits.Length / 8)];
      bits.CopyTo(ret, 0);
      return ret;
    }
Run Code Online (Sandbox Code Playgroud)

但我得到的错误告诉只有int和long类型可以使用.尝试int而不是字节但同样的问题.我想避免BitArray并尽可能使用从bool数组到byte的简单转换

c# data-conversion

3
推荐指数
1
解决办法
8466
查看次数

如何剪切在猫鼬中查找文档的文本?

我有以下架构:

var PostModel = mongoose.model('PostModel', {
    text : {type : String, default: ''},
    created_at : Date
});
Run Code Online (Sandbox Code Playgroud)

text字段可能很长(大约1000个字符).当我在帖子列表页面上查询帖子时,我需要查询所有包含剪切text字段的帖子,仅限150个字符.

这是最好的方法吗?是否可以通过使用猫鼬本身进行切割,还是应该在使用后检索文本PostModel.find() in success callback

mongoose mongodb node.js

3
推荐指数
1
解决办法
146
查看次数

查询过去24小时创建的帖子的日期

我有这个模式与字段"created_at"的日期:

var post = new mongoose.Schema({
    text : String,
    created_at : {type : Date, index : true},
    pos : {latitude: Number, longitude: Number},
    created_by : {type : Schema.Types.ObjectId, ref : "UserSchema"}
});
Run Code Online (Sandbox Code Playgroud)

有了这个:

Post.pre("save", function (next){
    var currentDate = new Date();

    if(!this.created_at)
    {
        this.created_at = currentDate;
    }
    next();
});
Run Code Online (Sandbox Code Playgroud)

现在我只想在24小时内创建帖子,我该如何查询?

javascript mongoose mongodb node.js mongodb-query

3
推荐指数
1
解决办法
1357
查看次数

Mongoose错误:参数必须是聚合管道运算符

我无法使用聚合选项参数获得结果.这是我的汇总: -

var emails = getAllEmails();
var listMatchColl = 'list_matches_' + insertedId;
SurveyDL.aggregate([
     { $match: { email: { $in: emails } } },
     { $out: listMatchColl }
 ], {
   allowDiskUse: true
 }).exec(function(err, data) {
  if (err) return console.log('err', err);
    console.log('data',data);
 });
}
Run Code Online (Sandbox Code Playgroud)

当我执行上面的代码时,它抛出并出现错误,即

错误:参数必须是Aggregate.append(/home/vivek/nrich/node_modules/mongoose/lib/aggregate.js:89:11)聚合管道运营商的新聚合(/ home/vivek/nrich/node_modules/mongoose/lib) /aggregate.js:48:17)

我也使用替代方法,但它仍然抛出相同的错误.替代方式: -

var emails = getAllEmails();
var listMatchColl = 'list_matches_' + insertedId;
SurveyDL.aggregate([
     { $match: { email: { $in: emails } } },
     { $out: listMatchColl }
 ], {
   allowDiskUse: true
 },function(err, data) { …
Run Code Online (Sandbox Code Playgroud)

mongoose mongodb node.js mongodb-query aggregation-framework

3
推荐指数
1
解决办法
6804
查看次数

在mongo aggregate $ lookup查询中使用数组第一个字段来匹配文档

我想使用我的数组字段第0个值来使用Mongo aggregate $ lookup查询在销售文档中查找匹配项.这是我的查询:

db.products.aggregate([ 
{ 
    $match : { _id:ObjectId("57c6957fb190ecc02e8b456b")  }  
},
{
    $lookup : {
        from : 'sale',
        localField: 'categories.0', 
        foreignField: 'saleCategoryId', 
        as : 'pcSales'  
    }
}]);
Run Code Online (Sandbox Code Playgroud)

结果:

{
"_id" : ObjectId("57c6957fb190ecc02e8b456b"),   
"categories" : [
    "57c54f0db190ec430d8b4571"
],  
"pcSales" : [
    {
        "_id" : ObjectId("57c7df5f30fb6eacb3810d1b"),                       
        "Title" : "Latest Arrivals",
    }
]}
Run Code Online (Sandbox Code Playgroud)

此查询将返回一个匹配,但当我检查它不匹配.我不知道为什么会发生这种情况,当我从查询中删除第0部分时它返回空白数组.像这样:

{
    "_id" : ObjectId("57c6957fb190ecc02e8b456b"),   
    "categories" : [
        "57c54f0db190ec430d8b4571"
    ],  
    "pcSales" : []
}
Run Code Online (Sandbox Code Playgroud)

saleCategoryId也是一个包含categoriesKey数组的数组字段.

请帮忙.

mongodb mongodb-query aggregation-framework mongodb-aggregation

3
推荐指数
1
解决办法
3107
查看次数

综合平均值

我希望在 MongoDB 聚合中找到的平均值得出一个综合值

 [
      {
        "_id": "581c3d9c55421c16ecaf0b26",
        "uDept": "CoE Design & Research",
        "uName": "Saurabh Raman",
        "rateVal": 3,
        "timeStamp": "11/4/2016 13:17",
        "__v": 0
      },
      {
        "_id": "581c437ea3d9f6087ce3b21e",
        "uDept": "CoE Design & Research",
        "uName": "Sachin P Singh",
        "rateVal": 4,
        "timeStamp": "11/4/2016 13:42",
        "__v": 0
      },
      {
        "_id": "581c6d74a3d9f6087ce3b21f",
        "uDept": "Training",
        "uName": "Rahul Shakya",
        "rateVal": 4,
        "timeStamp": "11/4/2016 16:35",
        "__v": 0
      }
    ]
Run Code Online (Sandbox Code Playgroud)

我运行以获取“rateVal”平均值的查询

db.calcR.aggregate([
    {
            $group: {
                _id: null,  

                avg: {$avg: '$rateVal'},

            }
    }
Run Code Online (Sandbox Code Playgroud)

输出是{ avg: 3.6666 }但理想情况下我希望它显示为 4

[ …
Run Code Online (Sandbox Code Playgroud)

mongodb mongodb-query aggregation-framework

3
推荐指数
1
解决办法
1692
查看次数

mongoDb $ in与聚合查询

如何$in在mongoDB中与聚合一起编写查询?我想为下面的SQL写一个等效的mongoDB查询

SELECT name,count(something) from collection1
where name in (<<list of Array>>) and cond1 = 'false'
group by name
Run Code Online (Sandbox Code Playgroud)

mongodb mongodb-query aggregation-framework

3
推荐指数
1
解决办法
4136
查看次数

如何计算mongodb的时间戳差异(小时)?

这是我的数据:

[
   {
       id: 1, 
       starttime: ISODate("2015-08-24T00:00:00.000Z"), 
       endtime: ISODate("2015-08-24T07:00:00.000Z")
   },
   {
       id: 2, 
       starttime: ISODate("2015-08-24T20:00:00.000Z"), 
       endtime: ISODate("2015-08-25T01:00:00.000Z")
   }
]
Run Code Online (Sandbox Code Playgroud)

我可以创建一个mongodb查询来显示starttime和endtime的持续时间(或者在这种情况下是差异操作),结果如下:

[ {id:1, duration: 7}, {id: 2, duration: 5}]
Run Code Online (Sandbox Code Playgroud)

请注意,时间戳可以具有不同的日期,因此$hour(聚合管道)可能不起作用.有人可以帮忙吗?谢谢

mongodb mongodb-query aggregation-framework

3
推荐指数
2
解决办法
4264
查看次数

通过日期和数字字段的总和与当前时间戳之间的日期比较来删除文档

MongoDB集合中的文档具有以下模式(仅显示相关字段):

{
    "TTLinSeconds" : 1800,
    "lastUpdatedTimestamp" : ISODate("...")
}
Run Code Online (Sandbox Code Playgroud)

我需要删除current timestamp大于lastUpdatedTimestamp加上TTLinSeconds字段中存储的值的所有文档.提前感谢您的建议.

mongodb mongo-shell mongodb-query

3
推荐指数
1
解决办法
576
查看次数