如何爲我認爲是非標準Json字段創建Data Transformation Object類?爲非標準Json字段創建DTO
具體我在看的Rackspace Cloud Identity documentation並且有本節:
"token":
{
"RAX-AUTH:authenticatedBy": [
"PASSWORD"
],
"expires": "2014-01-09T15:08:53.645-06:00",
"id": "123abc53689b12357897898"
}
在創造我的DTO類條目我會像下面這樣:
public class token
{
public DateTime expires { get; set; }
public string id { get; set; }
}
如何在赫克我代表JSON數據字段RAX-AUTH:authenticatedBy,以便序列化處理程序可以正確理解和映射它?
UPDATE:
我原來的問題是序列化的反應,但我意識到我的更大的問題是在請求DTO反序列化:
{
"auth": {
"RAX-AUTH:domain": {
"name":"Rackspace"
},
"passwordCredentials": {
"username":"<USERNAME>",
"password":"<PASSWORD>"
}
}
}
我測試過建議,但出站JSON有「域「,而不是像API那樣的」RAX-AUTH:domain「所期望的:
[DataContract(Name="auth")]
public class CloudIdentityAuthRequest
{
[DataMember]
[JsonProperty("RAX-AUTH:domain")]
public CloudIdentityDomain domain { get; }
[DataMember]
public CloudIdentityPasswordCredentials passwordCredentials { get; }
}
[DataContract]
public class CloudIdentityDomain
{
[DataMember]
public string name { get { return "Rackspace"; } }
}
請向我們展示您實際執行序列化/發送請求的代碼。我們不知道您使用的是什麼JSON序列化功能。 – JLRishe
我在問建立一個可以與Json.NET一起使用的DTO類... Rackspace API Auth請求/響應具有這個特定的字段'RAX-AUTH:domain'和'RAX-AUTH:authenticatedBy',它們是主要的問題。 – Dscoduc