2016-08-07 42 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; } 
}