使用LINQ创建JSON时JSON.NET参数异常

使用LINQ创建JSON时JSON.NET参数异常,linq,json.net,Linq,Json.net,我使用的是JSON.NET Linq to JSON,当我执行以下命令时,我得到以下参数异常: 无法将Newtonsoft.Json.Linq.JValue添加到Newtonsoft.Json.Linq.JObject 代码怎么了 string content = new JObject( new JObject("auth", new JProperty("user", "anemail@gmail.com"),

我使用的是JSON.NET Linq to JSON,当我执行以下命令时,我得到以下参数异常:

无法将Newtonsoft.Json.Linq.JValue添加到Newtonsoft.Json.Linq.JObject

代码怎么了

string content = new JObject(
            new JObject("auth",
                        new JProperty("user", "anemail@gmail.com"),
                        new JProperty("secret", "somepassword")
                ),
            new JObject("config",
                        new JProperty("template", "1")
                ),
            new JObject("data",
                        new JProperty("email", "body")
                )
            ).ToString();
根据JSON.NET,您需要将作业对象包装在JProperty中:

string content = new JObject(
                   new JProperty("auth",
                     new JObject(
                       new JProperty("user", "anemail@gmail.com"),
                       new JProperty("secret", "somepassword")
                     )
                   ),
                   new JProperty("config",
                     new JObject(
                       new JProperty("template", "1")
                     )
                   ),
                   new JProperty("data",
                     new JObject(
                       new JProperty("email", "body")
                     )
                   )
                 ).ToString();


字符串内容=新作业对象(
新的JProperty(“auth”,
新作业项目(
新的JProperty(“用户”anemail@gmail.com"),
新的JProperty(“机密”、“somepassword”)
)
),
新建JProperty(“配置”,
新作业项目(
新JProperty(“模板”、“1”)
)
),
新的JProperty(“数据”,
新作业项目(
新JProperty(“电子邮件”、“正文”)
)
)
).ToString()


蒂姆是对的。您编写的内容看起来更像是使用
XDocument
XElement
创建XML结构,您可以在参数列表中混合节点名及其子节点。