当前位置: 首页>>代码示例>>C#>>正文


C# BsonDocument.Where方法代码示例

本文整理汇总了C#中BsonDocument.Where方法的典型用法代码示例。如果您正苦于以下问题:C# BsonDocument.Where方法的具体用法?C# BsonDocument.Where怎么用?C# BsonDocument.Where使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在BsonDocument的用法示例。


在下文中一共展示了BsonDocument.Where方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: ProcessDifferencesInDocument

        private static BsonDocument ProcessDifferencesInDocument(this BsonDocument a, BsonDocument b)
        {
            var bson = new BsonDocument();

            foreach (var e in a.Where(e => !b.Contains(e.Name)))
            {
                bson.SetElement(new BsonElement("+a:" + e.Name, e.Value));
            }

            foreach (var e in b.Where(e => !a.Contains(e.Name)))
            {
                bson.SetElement(new BsonElement("+b:" + e.Name, e.Value));
            }

            return bson;
        }
开发者ID:jvanzella,项目名称:ch-bson,代码行数:16,代码来源:Diff.cs

示例2: CreateWriteConcernErrorFromGetLastErrorResponse

        private static BulkWriteConcernError CreateWriteConcernErrorFromGetLastErrorResponse(BsonDocument getLastErrorResponse)
        {
            var code = getLastErrorResponse.GetValue("code", 64).ToInt32(); // default = WriteConcernFailed

            string message = null;
            BsonValue value;
            if (getLastErrorResponse.TryGetValue("err", out value) && value.BsonType == BsonType.String)
            {
                message = value.AsString;
            }
            else if (getLastErrorResponse.TryGetValue("jnote", out value) && value.BsonType == BsonType.String)
            {
                message = value.AsString;
            }
            else if (getLastErrorResponse.TryGetValue("wnote", out value) && value.BsonType == BsonType.String)
            {
                message = value.AsString;
            }

            var details = new BsonDocument(getLastErrorResponse.Where(e => !new[] { "ok", "code", "err" }.Contains(e.Name)));

            return new BulkWriteConcernError(code, message, details);
        }
开发者ID:narutoswj,项目名称:mongo-csharp-driver,代码行数:23,代码来源:BulkWriteBatchResult.cs

示例3: Diff

        public static BsonDocument Diff(this BsonDocument a, BsonDocument b)
        {
            if (!a.HasSameElementNamesAs(b))
            {
                var bson = new BsonDocument();
                foreach (var e in a.Where(e => !b.Contains(e.Name)))
                {
                    bson.SetElement(new BsonElement("+a:" + e.Name, e.Value));
                }
                foreach (var e in b.Where(e => !a.Contains(e.Name)))
                {
                    bson.SetElement(new BsonElement("+b:" + e.Name, e.Value));
                }
                return bson;
            }
            else
            {
                var bson = new BsonDocument();

                foreach (var e in a)
                {
                    var d = Diff(e.Value, b[e.Name]);
                    if (d.ElementCount > 0)
                        bson.Add(e.Name, d);
                }
                return bson;
            }
        }
开发者ID:tanglebones,项目名称:ch-bson,代码行数:28,代码来源:Extensions.cs


注:本文中的BsonDocument.Where方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。