• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# IO.BsonDocumentWriter类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中MongoDB.Bson.IO.BsonDocumentWriter的典型用法代码示例。如果您正苦于以下问题:C# BsonDocumentWriter类的具体用法?C# BsonDocumentWriter怎么用?C# BsonDocumentWriter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



BsonDocumentWriter类属于MongoDB.Bson.IO命名空间,在下文中一共展示了BsonDocumentWriter类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: TestNoCircularReference

        public void TestNoCircularReference()
        {
            var c2 = new C { X = 2 };
            var c1 = new C { X = 1, NestedDocument = c2 };

            var json = c1.ToJson();
            var expected = "{ 'X' : 1, 'NestedDocument' : { 'X' : 2, 'NestedDocument' : null, 'BsonArray' : { '_csharpnull' : true } }, 'BsonArray' : { '_csharpnull' : true } }".Replace("'", "\"");
            Assert.AreEqual(expected, json);

            var memoryStream = new MemoryStream();
            using (var writer = new BsonBinaryWriter(memoryStream))
            {
                BsonSerializer.Serialize(writer, c1);
                Assert.AreEqual(0, writer.SerializationDepth);
            }

            var document = new BsonDocument();
            using (var writer = new BsonDocumentWriter(document))
            {
                BsonSerializer.Serialize(writer, c1);
                Assert.AreEqual(0, writer.SerializationDepth);
            }

            var stringWriter = new StringWriter();
            using (var writer = new JsonWriter(stringWriter))
            {
                BsonSerializer.Serialize(writer, c1);
                Assert.AreEqual(0, writer.SerializationDepth);
            }
        }
开发者ID:Bogdan0x400,项目名称:mongo-csharp-driver,代码行数:30,代码来源:CircularReferencesTests.cs


示例2: Serialize

 /// <summary>
 /// 
 /// </summary>
 /// <param name="nominalType"></param>
 /// <param name="value"></param>
 /// <param name="options"></param>
 /// <returns></returns>
 public static BsonDocument Serialize(Type nominalType, object value, IBsonSerializationOptions options)
 {
     var document = new BsonDocument();
     var writerSettings = new BsonDocumentWriterSettings();
     var writer = new BsonDocumentWriter(document, writerSettings);
     BsonSerializer.Serialize(writer, nominalType, value, options);
     return document;
 }
开发者ID:cdmckay,项目名称:mongodb-aspnet-providers,代码行数:15,代码来源:SerializationHelper.cs


示例3: Serizalize

        public BsonDocument Serizalize(IEvent @event)
        {
            if (@event == null) throw new ArgumentNullException(nameof(@event));

            var document = new BsonDocument();

            using (var writer = new BsonDocumentWriter(document))
            {
                BsonSerializer.Serialize(writer, @event);
            }

            return document;
        }
开发者ID:akurin,项目名称:EventStorePrototype,代码行数:13,代码来源:CSharpMongoDriverEventSerializer.cs


示例4: TestOneEmptyArray

 public void TestOneEmptyArray()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteStartArray("a");
         writer.WriteEndArray();
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'a' : [] }".Replace("'", "\"");
     Assert.Equal(expected, json);
 }
开发者ID:mfidemraizer,项目名称:mongo-csharp-driver,代码行数:14,代码来源:BsonDocumentWriterTests.cs


示例5: 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];
            }
        }
开发者ID:robblovell,项目名称:mongo-csharp-driver,代码行数:15,代码来源:ISerializationExpression.cs


示例6: TestTwoNestedEmptyArrays

 public void TestTwoNestedEmptyArrays()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteStartDocument("nested");
         writer.WriteStartArray("a");
         writer.WriteEndArray();
         writer.WriteStartArray("b");
         writer.WriteEndArray();
         writer.WriteEndDocument();
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'nested' : { 'a' : [], 'b' : [] } }".Replace("'", "\"");
     Assert.AreEqual(expected, json);
 }
开发者ID:annikulin,项目名称:code-classifier,代码行数:18,代码来源:BsonDocumentWriterTests.cs


示例7: TestArrayWithNestedArrayWithTwoElements

 public void TestArrayWithNestedArrayWithTwoElements()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteStartArray("a");
         writer.WriteStartArray();
         writer.WriteString("a");
         writer.WriteString("b");
         writer.WriteEndArray();
         writer.WriteEndArray();
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'a' : [['a', 'b']] }".Replace("'", "\"");
     Assert.Equal(expected, json);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:18,代码来源:BsonDocumentWriterTests.cs


示例8: 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];
            }
        }
开发者ID:robblovell,项目名称:mongo-csharp-driver,代码行数:19,代码来源:ISerializationExpression.cs


示例9: TestSerializeDeserialize

        public void TestSerializeDeserialize()
        {
            var path = "c:/a/b/c/f.txt";
            var data = new Data
            {
                Path = new ParsedPath(path, PathType.File)
            };

            var doc = new BsonDocument();

            using (var writer = new BsonDocumentWriter(doc, new BsonDocumentWriterSettings()))
            {
                BsonSerializer.Serialize(writer, data);
            }

            Assert.AreEqual(doc["Path"], new BsonString(path));

            using (var reader = new BsonDocumentReader(doc, new BsonDocumentReaderSettings()))
            {
                data = BsonSerializer.Deserialize<Data>(doc);
            }

            Assert.AreEqual(data.Path, new ParsedPath(path, PathType.File));
        }
开发者ID:rhinosoft,项目名称:ToolBelt,代码行数:24,代码来源:BsonParsedPathTests.cs


示例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);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:14,代码来源:BsonDocumentWriterTests.cs


示例11: TestTwoDoubles

 public void TestTwoDoubles()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteDouble("a", 1.5);
         writer.WriteDouble("b", 2.5);
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'a' : 1.5, 'b' : 2.5 }".Replace("'", "\""); ;
     Assert.Equal(expected, json);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:14,代码来源:BsonDocumentWriterTests.cs


示例12: 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);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:14,代码来源:BsonDocumentWriterTests.cs


示例13: TestTwoBooleans

 public void TestTwoBooleans()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteBoolean("a", true);
         writer.WriteBoolean("b", false);
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'a' : true, 'b' : false }".Replace("'", "\""); ;
     Assert.Equal(expected, json);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:14,代码来源:BsonDocumentWriterTests.cs


示例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);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:16,代码来源:BsonDocumentWriterTests.cs


示例15: TestTwoMinKeys

 public void TestTwoMinKeys()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteMinKey("a");
         writer.WriteMinKey("b");
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'a' : MinKey, 'b' : MinKey }".Replace("'", "\""); ;
     Assert.Equal(expected, json);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:14,代码来源:BsonDocumentWriterTests.cs


示例16: TestOneSymbol

 public void TestOneSymbol()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteSymbol("a", "x");
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'a' : { '$symbol' : 'x' } }".Replace("'", "\""); ;
     Assert.Equal(expected, json);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:13,代码来源:BsonDocumentWriterTests.cs


示例17: TestOneRegularExpression

 public void TestOneRegularExpression()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteRegularExpression("a", new BsonRegularExpression("p", "i"));
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'a' : /p/i }".Replace("'", "\""); ;
     Assert.Equal(expected, json);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:13,代码来源:BsonDocumentWriterTests.cs


示例18: TestOneObjectId

 public void TestOneObjectId()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteObjectId("a", ObjectId.Empty);
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'a' : ObjectId('000000000000000000000000') }".Replace("'", "\""); ;
     Assert.Equal(expected, json);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:13,代码来源:BsonDocumentWriterTests.cs


示例19: TestOneNestedNull

 public void TestOneNestedNull()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteStartDocument("nested");
         writer.WriteNull("a");
         writer.WriteEndDocument();
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'nested' : { 'a' : null } }".Replace("'", "\"");
     Assert.Equal(expected, json);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:15,代码来源:BsonDocumentWriterTests.cs


示例20: TestOneNestedBinary

 public void TestOneNestedBinary()
 {
     var document = new BsonDocument();
     using (var writer = new BsonDocumentWriter(document))
     {
         writer.WriteStartDocument();
         writer.WriteStartDocument("nested");
         writer.WriteBytes("a", new byte[] { 1, 2 });
         writer.WriteEndDocument();
         writer.WriteEndDocument();
     }
     var json = document.ToJson();
     var expected = "{ 'nested' : { 'a' : new BinData(0, 'AQI=') } }".Replace("'", "\"");
     Assert.Equal(expected, json);
 }
开发者ID:RavenZZ,项目名称:MDRelation,代码行数:15,代码来源:BsonDocumentWriterTests.cs



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# IO.BsonReader类代码示例发布时间:2022-05-26
下一篇:
C# IO.BsonBuffer类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap