本文整理汇总了C#中BsonDocument.Clone方法的典型用法代码示例。如果您正苦于以下问题:C# BsonDocument.Clone方法的具体用法?C# BsonDocument.Clone怎么用?C# BsonDocument.Clone使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BsonDocument
的用法示例。
在下文中一共展示了BsonDocument.Clone方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateClientDocument
internal static BsonDocument CreateClientDocument(string applicationName, BsonDocument driverDocument, BsonDocument osDocument, string platformString)
{
var clientDocument = new BsonDocument
{
{ "application", () => new BsonDocument("name", applicationName), applicationName != null },
{ "driver", driverDocument },
{ "os", osDocument.Clone() }, // clone because we might be removing optional fields from this particular clientDocument
{ "platform", platformString }
};
return RemoveOptionalFieldsUntilDocumentIsLessThan512Bytes(clientDocument);
}
示例2: TestClone
public void TestClone()
{
var document = new BsonDocument("d", new BsonDocument("x", 1));
var clone = (BsonDocument)document.Clone();
Assert.AreEqual(clone, document);
Assert.AreSame(clone["d"], document["d"]);
}
示例3: TestCompareToBsonValue
public void TestCompareToBsonValue()
{
var bsonDocument = new BsonDocument { { "a", 1 }, { "b", 2 } };
var bson = bsonDocument.ToBson();
using (var lazyBsonDocument = BsonSerializer.Deserialize<LazyBsonDocument>(bson))
{
Assert.AreEqual(0, lazyBsonDocument.CompareTo((BsonValue)bsonDocument));
}
using (var lazyBsonDocument = BsonSerializer.Deserialize<LazyBsonDocument>(bson))
{
var clone = (BsonDocument)bsonDocument.Clone();
clone["a"] = 0;
Assert.AreEqual(1, lazyBsonDocument.CompareTo((BsonValue)clone));
}
using (var lazyBsonDocument = BsonSerializer.Deserialize<LazyBsonDocument>(bson))
{
var clone = (BsonDocument)bsonDocument.Clone();
clone["a"] = 2;
Assert.AreEqual(-1, lazyBsonDocument.CompareTo((BsonValue)clone));
}
using (var lazyBsonDocument = BsonSerializer.Deserialize<LazyBsonDocument>(bson))
{
var clone = (BsonDocument)bsonDocument.Clone();
clone.SetElement(0, new BsonElement("c", 1)); // "a" < "c" when comparing names
Assert.AreEqual(-1, lazyBsonDocument.CompareTo((BsonValue)clone));
}
using (var lazyBsonDocument = BsonSerializer.Deserialize<LazyBsonDocument>(bson))
{
var clone = (BsonDocument)bsonDocument.Clone();
clone.Remove("b");
Assert.AreEqual(1, lazyBsonDocument.CompareTo((BsonValue)clone));
}
using (var lazyBsonDocument = BsonSerializer.Deserialize<LazyBsonDocument>(bson))
{
var clone = (BsonDocument)bsonDocument.Clone();
clone["c"] = 3;
Assert.AreEqual(-1, lazyBsonDocument.CompareTo((BsonValue)clone));
}
}