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


C# BsonDocument.Diff方法代码示例

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


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

示例1: DiffAFieldAddedAndAFieldModified

        public void DiffAFieldAddedAndAFieldModified()
        {
            var a = new BsonDocument();
            var b = new BsonDocument();

            const string existingField = "existingField";
            const string newField = "newField";

            const int newExistingFieldValue = 1;
            const int oldExistingFieldValue = 2;
            const int newFieldValue = 3;

            a.SetValue(existingField, newExistingFieldValue);
            a.SetValue(newField, newFieldValue);
            b.SetValue(existingField, oldExistingFieldValue);

            var expectedDiff = new BsonDocument
                {
                    {"+a:newField", newFieldValue},
                    {
                        existingField, new BsonDocument
                            {
                                {
                                    "values differ",
                                    new BsonDocument {{"a", newExistingFieldValue}, {"b", oldExistingFieldValue}}
                                }
                            }
                    }
                };

            var result = a.Diff(b);

            Assert.That(result, Is.EqualTo(expectedDiff));
        }
开发者ID:jvanzella,项目名称:ch-bson,代码行数:34,代码来源:Diff.cs

示例2: SetValueTest

        public void SetValueTest()
        {
            var doc = new BsonDocument();

            var expected = BsonDocument.Parse("{'a':{'b':{'c':1}}}");

            doc.SetValue("a.b", "c");
            doc.SetValue("a.b", new BsonDocument("c",1));

            var diff = doc.Diff(expected);
            Assert.That(diff.ElementCount, Is.EqualTo(0));

            doc.SetValue("e",1);
            var expected2 = BsonDocument.Parse("{'a':{'b':{'c':1}},'e':1}");
            diff = doc.Diff(expected2);
            Assert.That(diff.ElementCount, Is.EqualTo(0));

            doc.SetValue(string.Empty, 1);
            diff = doc.Diff(expected2);
            Assert.That(diff.ElementCount, Is.EqualTo(0));
        }
开发者ID:tanglebones,项目名称:ch-bson,代码行数:21,代码来源:SetValue.cs

示例3: DiffTwoBsonDocumentsWithDifferentElementNames

        public void DiffTwoBsonDocumentsWithDifferentElementNames()
        {
            // Arrange
            var a = new BsonDocument {new BsonElement("Name", "John"), new BsonElement("Age", 20)};
            var b = new BsonDocument {new BsonElement("Name", "John"), new BsonElement("Weight", 160)};
            var expected = new BsonDocument {new BsonElement("+a:Age", 20), new BsonElement("+b:Weight", 160)};

            // Act
            var doc = a.Diff(b);

            // Assert
            Assert.That(doc.Equals(expected));
        }
开发者ID:jvanzella,项目名称:ch-bson,代码行数:13,代码来源:Diff.cs

示例4: DiffTwoBsonDocumentsWithElementValues

        public void DiffTwoBsonDocumentsWithElementValues()
        {
            // Arrange
            var a = new BsonDocument {new BsonElement("Name", "John"), new BsonElement("Age", 20)};
            var b = new BsonDocument {new BsonElement("Name", "John"), new BsonElement("Age", 30)};
            var expected =
                new BsonDocument
                    {
                        new BsonElement(
                            "Age",
                            new BsonDocument(
                                "values differ",
                                new BsonDocument {{"a", 20}, {"b", 30}}
                                )
                            )
                    };

            // Act
            var doc = a.Diff(b);

            // Assert
            Assert.That(doc.Equals(expected));
        }
开发者ID:jvanzella,项目名称:ch-bson,代码行数:23,代码来源:Diff.cs

示例5: DiffTwoIdenticalBsonValuesOfTypeDocument

        public void DiffTwoIdenticalBsonValuesOfTypeDocument()
        {
            // Arrange
            BsonValue a = new BsonDocument("x", 1);
            BsonValue b = new BsonDocument("x", 1);
            var expectedDiff = new BsonDocument();

            // Act
            var value = a.Diff(b);

            // Assert
            Assert.That(value, Is.EqualTo(expectedDiff));
        }
开发者ID:jvanzella,项目名称:ch-bson,代码行数:13,代码来源:Diff.cs

示例6: DiffTwoDifferentBsonValuesOfTypeDocument

        public void DiffTwoDifferentBsonValuesOfTypeDocument()
        {
            // Arrange
            BsonValue a = new BsonDocument("x", 1);
            BsonValue b = new BsonDocument("x", 2);
            var expectedDiff =
                new BsonDocument
                    {
                        new BsonElement(
                            "x",
                            new BsonDocument
                                {
                                    new BsonElement(
                                "values differ",
                                new BsonDocument {{"a", 1}, {"b", 2}})
                                }
                            )
                    };

            // Act
            var value = a.Diff(b);

            // Assert
            Assert.That(value, Is.EqualTo(expectedDiff));
        }
开发者ID:jvanzella,项目名称:ch-bson,代码行数:25,代码来源:Diff.cs


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