2016-08-07 40 views
0

我已经创建了下面的类我想序列化到JSON:序列化类与父名JSON

[JsonObject("user_auth")] 
public class CrmAuth 
{ 
    [JsonProperty("user_name")] 
    public string Name { get; set; } 
    [JsonProperty("password")] 
    public string Password { get; set; } 
} 

我想序列化,如:

var serialized = JsonConvert.SerializeObject(crmAuthInstance); 

此创建这个JSON:

{ 
    "user_name":"login name", 
    "password":"the password" 
} 

但我想是这样的:

"user_auth" : { 
    "user_name":"login value", 
    "password":"password value" 
} 

是否有一个简单的方法来实现这样的单个类的序列化?

+0

你检查这个帖子http://stackoverflow.com/questions/16294963/json-net- serialize-object-with-root-name – Rahul

回答

0

测试此命令

var serialized = JsonConvert.SerializeObject(new{user_auth=crmAuthInstance}); 
+0

有什么方法可以在类级别定义它,还是必须从调用代码完成?我真的很想在实际的班级模型上定义这个 – Guerrilla

0

我已经得到了它的工作是这样的:

public class CrmAuthReq 
{ 
    [JsonProperty("user_auth")] 
    public CrmAuth Auth { get; set; } 
} 
public class CrmAuth 
{ 
    [JsonProperty("user_name")] 
    public string Name { get; set; } 
    [JsonProperty("password")] 
    public string Password { get; set; } 
}