本文整理汇总了C#中MongoDB.Bson.IO.BsonDocumentWriter.WriteEndDocument方法的典型用法代码示例。如果您正苦于以下问题:C# BsonDocumentWriter.WriteEndDocument方法的具体用法?C# BsonDocumentWriter.WriteEndDocument怎么用?C# BsonDocumentWriter.WriteEndDocument使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MongoDB.Bson.IO.BsonDocumentWriter
的用法示例。
在下文中一共展示了BsonDocumentWriter.WriteEndDocument方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestOneNestedEmptyArray
public void TestOneNestedEmptyArray()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteStartDocument("nested");
writer.WriteStartArray("a");
writer.WriteEndArray();
writer.WriteEndDocument();
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'nested' : { 'a' : [] } }".Replace("'", "\"");
Assert.Equal(expected, json);
}
示例2: SerializeValue
public static BsonValue SerializeValue(this ISerializationExpression field, object value)
{
Ensure.IsNotNull(field, nameof(field));
var tempDocument = new BsonDocument();
using (var bsonWriter = new BsonDocumentWriter(tempDocument))
{
var context = BsonSerializationContext.CreateRoot(bsonWriter);
bsonWriter.WriteStartDocument();
bsonWriter.WriteName("value");
field.Serializer.Serialize(context, value);
bsonWriter.WriteEndDocument();
return tempDocument[0];
}
}
示例3: TestTwoEmptyArrays
public void TestTwoEmptyArrays()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteStartArray("a");
writer.WriteEndArray();
writer.WriteStartArray("b");
writer.WriteEndArray();
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'a' : [], 'b' : [] }".Replace("'", "\"");
Assert.AreEqual(expected, json);
}
示例4: TestArrayWithNestedArrayWithOneElement
public void TestArrayWithNestedArrayWithOneElement()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteStartArray("a");
writer.WriteStartArray();
writer.WriteString("a");
writer.WriteEndArray();
writer.WriteEndArray();
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'a' : [['a']] }".Replace("'", "\"");
Assert.Equal(expected, json);
}
示例5: SerializeValues
public static BsonArray SerializeValues(this ISerializationExpression field, IEnumerable values)
{
var tempDocument = new BsonDocument();
using (var bsonWriter = new BsonDocumentWriter(tempDocument))
{
var context = BsonSerializationContext.CreateRoot(bsonWriter);
bsonWriter.WriteStartDocument();
bsonWriter.WriteName("values");
bsonWriter.WriteStartArray();
foreach (var value in values)
{
field.Serializer.Serialize(context, value);
}
bsonWriter.WriteEndArray();
bsonWriter.WriteEndDocument();
return (BsonArray)tempDocument[0];
}
}
示例6: TestOneTimestamp
public void TestOneTimestamp()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteTimestamp("a", 1);
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'a' : Timestamp(0, 1) }".Replace("'", "\""); ;
Assert.Equal(expected, json);
}
示例7: TestOneUndefined
public void TestOneUndefined()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteUndefined("a");
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'a' : undefined }".Replace("'", "\""); ;
Assert.Equal(expected, json);
}
示例8: TestTwoNestedMinKeys
public void TestTwoNestedMinKeys()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteStartDocument("nested");
writer.WriteMinKey("a");
writer.WriteMinKey("b");
writer.WriteEndDocument();
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'nested' : { 'a' : { '$minkey' : 1 }, 'b' : { '$minkey' : 1 } } }".Replace("'", "\"");
Assert.AreEqual(expected, json);
}
示例9: TestArrayWithTwoElements
public void TestArrayWithTwoElements()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteStartArray("a");
writer.WriteInt32(1);
writer.WriteInt32(2);
writer.WriteEndArray();
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'a' : [1, 2] }".Replace("'", "\"");
Assert.Equal(expected, json);
}
示例10: TestTwoInt64s
public void TestTwoInt64s()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteInt64("a", 1);
writer.WriteInt64("b", 2);
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'a' : NumberLong(1), 'b' : NumberLong(2) }".Replace("'", "\""); ;
Assert.Equal(expected, json);
}
示例11: TestTwoJavaScriptWithScopes
public void TestTwoJavaScriptWithScopes()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteJavaScriptWithScope("a", "x");
writer.WriteStartDocument();
writer.WriteInt32("x", 1);
writer.WriteEndDocument();
writer.WriteJavaScriptWithScope("b", "y");
writer.WriteStartDocument();
writer.WriteInt32("y", 2);
writer.WriteEndDocument();
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'a' : { '$code' : 'x', '$scope' : { 'x' : 1 } }, 'b' : { '$code' : 'y', '$scope' : { 'y' : 2 } } }".Replace("'", "\""); ;
Assert.Equal(expected, json);
}
示例12: ConvertStoreDataToBsonDocument
/// <summary>
///
/// </summary>
/// <param name="storeData"></param>
/// <returns></returns>
private static BsonDocument ConvertStoreDataToBsonDocument(SessionStateStoreData storeData)
{
var items = storeData.Items;
var document = new BsonDocument();
var documentWriterSettings = new BsonDocumentWriterSettings();
var documentWriter = new BsonDocumentWriter(document, documentWriterSettings);
documentWriter.WriteStartDocument();
foreach (string key in items.Keys) {
var value = items[key];
documentWriter.WriteName(key);
BsonSerializer.Serialize(documentWriter, value.GetType(), value);
}
documentWriter.WriteEndDocument();
return document;
}
示例13: TestTwoDateTimes
public void TestTwoDateTimes()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteDateTime("a", 0);
writer.WriteDateTime("b", 0);
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'a' : ISODate('1970-01-01T00:00:00Z'), 'b' : ISODate('1970-01-01T00:00:00Z') }".Replace("'", "\""); ;
Assert.Equal(expected, json);
}
示例14: TestTwoNestedTimestamps
public void TestTwoNestedTimestamps()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteStartDocument("nested");
writer.WriteTimestamp("a", 1);
writer.WriteTimestamp("b", 2);
writer.WriteEndDocument();
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ 'nested' : { 'a' : Timestamp(0, 1), 'b' : Timestamp(0, 2) } }".Replace("'", "\"");
Assert.Equal(expected, json);
}
示例15: TestEmptyDocument
public void TestEmptyDocument()
{
var document = new BsonDocument();
using (var writer = new BsonDocumentWriter(document))
{
writer.WriteStartDocument();
writer.WriteEndDocument();
}
var json = document.ToJson();
var expected = "{ }";
Assert.Equal(expected, json);
}