C# Json对象解析错误

C# Json对象解析错误,c#,json,cassandra,C#,Json,Cassandra,我将数据作为字符串存储在cassandra数据库中,我希望检索字符串并将其转换为json。我听到一个例外的说法 发生类型为“Newtonsoft.Json.JsonReaderException”的未处理异常 存储的数据是否有问题?还是我做错了什么 我的问题是: INSERT INTO table2(key1,col1) values ('5',{'url':'{"hello": {"hi":{"hey":"1","time":"5"}}, {"reg":{"hey":"1","

我将数据作为字符串存储在cassandra数据库中,我希望检索字符串并将其转换为json。我听到一个例外的说法

发生类型为“Newtonsoft.Json.JsonReaderException”的未处理异常

存储的数据是否有问题?还是我做错了什么

我的问题是:

INSERT INTO table2(key1,col1) values ('5',{'url':'{"hello":
    {"hi":{"hey":"1","time":"5"}},
    {"reg":{"hey":"1","time":"1"}},
    {"install":{"hey":"0"}}},
    "task":"1","retry":"00",
    "max":"5","call":"140"'});


In my db when i click the map<text,text> column, it gets stored as : 

 {\"hello\":\r\n    
    {\"subscription_atrisk\":{\"hey\":\"1\",\"time\":\"100\"}},
    {\"reg\":{\"hey\":\"1\",\"time\":\"2000\"}},
\"task\":\"0\",\"retry\":\"300\",\"max\":\"5\",\"call\":\"14400\"}

有人能解释一下吗?

看起来你错过了一个结束语
}
尝试:


在JSON中,对象应该包含一个键和一个或另一个对象/数组。 JSON对象中存在语法错误。首先,始终使用双引号

然后。。。
url
对象有一个键
Hello
,但是在你应该放置另外两个键的地方,你只需要放置另外两个对象,就像它是一个数组一样

这可能是正确的语法:

{
"url": {
    "hello": {
        "hi": {
            "hey": "1",
            "time": "5"
        }
    },
    "MissingKey1":{
        "reg": {
            "hey": "1",
            "time": "1"
        }
    },
    "MissingKey2":{
        "install": {
            "hey": "0"
        }
    }
},
"task": "1",
"retry": "00",
"max": "5",
"call": "140"
}
或者,如果您真的想在
url
中有一个
hello
对象和另外两个对象的数组:

{
"url": {
    "hello": {
        "hi": {
            "hey": "1",
            "time": "5"
        }
    },
    "AnArray": [{
        "reg": {
            "hey": "1",
            "time": "1"
        }
    }, {
        "install": {
            "hey": "0"
        }
    }]
},
"task": "1",
"retry": "00",
"max": "5",
"call": "140"

}
我建议在将这些JSON对象存储到数据库中之前,始终验证它们,以确保它们的语法有效

或者更好:这个Newtonsoft库提供了从其他对象序列化(创建)JSON字符串的函数。看


一般来说,查看API文档是一个好主意,它确实可以为您节省大量时间,这样您就不必做不必要的工作

我认为你的JSON是无效的,因为它缺少一个右大括号。我仍然认为你的JSON是无效的,不要手动形成它。创建一个对象并序列化它以获得一个有效的json…是的,但你也缺少一个键。我把它写为“丢失钥匙”我没有丢失任何钥匙,就是这样
{
"url": {
    "hello": {
        "hi": {
            "hey": "1",
            "time": "5"
        }
    },
    "MissingKey1":{
        "reg": {
            "hey": "1",
            "time": "1"
        }
    },
    "MissingKey2":{
        "install": {
            "hey": "0"
        }
    }
},
"task": "1",
"retry": "00",
"max": "5",
"call": "140"
}
{
"url": {
    "hello": {
        "hi": {
            "hey": "1",
            "time": "5"
        }
    },
    "AnArray": [{
        "reg": {
            "hey": "1",
            "time": "1"
        }
    }, {
        "install": {
            "hey": "0"
        }
    }]
},
"task": "1",
"retry": "00",
"max": "5",
"call": "140"

}