Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Serialization 使用NewtonSoft Json.Net将简单字符串序列化为BSON时出错_Serialization_Json.net_Bson - Fatal编程技术网

Serialization 使用NewtonSoft Json.Net将简单字符串序列化为BSON时出错

Serialization 使用NewtonSoft Json.Net将简单字符串序列化为BSON时出错,serialization,json.net,bson,Serialization,Json.net,Bson,我试图将一个简单的字符串序列化到BSON,但我不断地遇到这个错误 “写入字符串值时出错。BSON必须以对象或数组开头。路径” 我不能使用Json.Net将“字符串”或简单类型序列化到BSON吗?如果不是,为什么 e、 g 来自bsonspec.org BSON是一种二进制格式,其中包含零个或多个键/值对 存储为单个实体。我们称这个实体为文档 这意味着有效的BSON必须仅以键/值对的形式存在,因此无法将字符串或整数等简单值写入BSON文档 关于为什么阵列可以作为一个完整的BSON文档获得通过,以下

我试图将一个简单的字符串序列化到BSON,但我不断地遇到这个错误

“写入字符串值时出错。BSON必须以对象或数组开头。路径”

我不能使用Json.Net将“字符串”或简单类型序列化到BSON吗?如果不是,为什么

e、 g

来自bsonspec.org

BSON是一种二进制格式,其中包含零个或多个键/值对 存储为单个实体。我们称这个实体为文档

这意味着有效的BSON必须仅以键/值对的形式存在,因此无法将字符串或整数等简单值写入BSON文档

关于为什么阵列可以作为一个完整的BSON文档获得通过,以下是注释部分引用的同一来源的描述:

数组-数组的文档是具有 键的整数值,从0开始,继续 按顺序。例如,数组
['red','blue']
将被编码 作为文档
{'0':'red','1':'blue'}
。钥匙一定在里面 升序数字顺序

using (var ms = new MemoryStream())
{
    using (var bw = new BsonWriter(ms))
    {
        var serializer = new JsonSerializer();

        serializer.Serialize(bw, "Testing123");

        bw.Flush();
    }

    return ms.ToArray();
}