相关疑难解决方法(0)

将字典转换为List <KeyValuePair>

我知道可以将KeyValuePair的List转换为Dictionary,但是有一种快速的方法(除了手动循环)以执行相反的操作吗?

这将是手动方式,

foreach (KeyValuePair<double,double> p in dict)
{
    list.Add(new KeyValuePair<double,double>(p.Key,p.Value));
}
Run Code Online (Sandbox Code Playgroud)

不是那么糟糕,但我只是好奇.

c# generics collections

47
推荐指数
3
解决办法
6万
查看次数

如何使用Json.Net将Dictionary序列化为其父对象的一部分

我正在使用Json.Net进行序列化.我有一个带有词典的类:

public class Test
{
    public string X { get; set; }

    public Dictionary<string, string> Y { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我可以以某种方式序列化此对象以获取以下JSON

{
    "X" : "value",
    "key1": "value1",
    "key2": "value2"
}
Run Code Online (Sandbox Code Playgroud)

其中"key1","key2"是字典中的键?

c# serialization json.net

35
推荐指数
2
解决办法
2万
查看次数

将.NET Dictionary <string,string>序列化为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; }
}
Run Code Online (Sandbox Code Playgroud)

成:

{
    "name":"package_name",
    "type":
    {
        "http://random.url.as.key":"random/value"
    }
}
Run Code Online (Sandbox Code Playgroud)

有:

Package package = new Package();
package.name = "package_name";
package.type.Add(new Dictionary<string, string>() { { "http://random.url.as.key", "random/value" } });
Run Code Online (Sandbox Code Playgroud)

我明白了:

{
    "name":"package_name",
    "type":
    [
        [
            {
                "Key":"http:\/\/random.url.as.key",
                "Value":"random\/value"
            }
        ]
    ]
}
Run Code Online (Sandbox Code Playgroud)

同时,用:

var package = new
{
    name = …
Run Code Online (Sandbox Code Playgroud)

c# asp.net wcf json

29
推荐指数
1
解决办法
7万
查看次数

标签 统计

c# ×3

asp.net ×1

collections ×1

generics ×1

json ×1

json.net ×1

serialization ×1

wcf ×1