我需要得到:序列化.NET詞典<字符串,字符串>成JSON鍵值對對象
public class Package
{
public Package()
{
name = "";
type = new List<Dictionary<string, string>>();
}
public string name { get; set; }
public List<Dictionary<string, string>> type { get; set; }
}
到:
{
"name":"package_name",
"type":
{
"http://random.url.as.key":"random/value"
}
}
有:
Package package = new Package();
package.name = "package_name";
package.type.Add(new Dictionary<string, string>() { { "http://random.url.as.key", "random/value" } });
我得到:
{
"name":"package_name",
"type":
[
[
{
"Key":"http:\/\/random.url.as.key",
"Value":"random\/value"
}
]
]
}
同時,與:
var package = new
{
name = "package_name",
type = new
{
http_random_url_as_key = "random/value"
}
};
我得到:
{
"name":"package_name",
"type":
{
"http_random_url_as_key":"random/value"
}
}
我不能得到的語意含混HTTP://random.url.as.key,我需要。我曾嘗試使用JavaScriptSerializer,DataContractJsonSerializer,和 Json.NET的自定義轉換器,所有成功/缺陷都很有限。
必須有更好的方法/我忽略了一個簡單的JSON對象,通過電線!
? – Vadim 2011-02-26 03:43:46
你首先'Package'類不會被編譯。你確定field * type *是一個'List>'嗎?在轉換爲JSON時,您似乎希望它像'Dictionary 一樣執行。 –
2011-02-26 03:46:19
使用它將.net代碼序列化爲JSON並還原。 http://james.newtonking.com/projects/json-net.aspx – Deepak 2011-02-26 05:03:27