Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将字典转换为xml?_C#_C# 4.0 - Fatal编程技术网

C# 如何将字典转换为xml?

C# 如何将字典转换为xml?,c#,c#-4.0,C#,C# 4.0,我想将字典转换为xml,以下是我的代码: public static XElement convertDictToXml(Dictionary<string, dynamic> inputDict, string elName) { XElement el = new XElement(elName); foreach (KeyValuePair<string, dynamic> entry in inputDict)

我想将字典转换为xml,以下是我的代码:

public static XElement convertDictToXml(Dictionary<string, dynamic> inputDict, string elName)
    {
        XElement el = new XElement(elName);
        foreach (KeyValuePair<string, dynamic> entry in inputDict)
        {
            el.Add(new XElement(entry.Key, entry.Value));
        }
        return el;
    }
public static XElement convertDictToXml(字典输入dict,字符串elName)
{
XElement el=新的XElement(elName);
foreach(inputDict中的KeyValuePair条目)
{
el.Add(新元素(entry.Key,entry.Value));
}
返回el;
}

但我只能转换到父级,所以我们如何才能从父级转换到所有子级字典。

尝试下面的代码。我想这就是你需要的

Dictionary<string, dynamic> inputDict = new Dictionary<string, dynamic>();
var xmlString = SerializeObject(inputDict);

public static string SerializeObject<T>(this T toSerialize)
{
    XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));

    StringWriter textWriter = new StringWriter();

    xmlSerializer.Serialize(textWriter, toSerialize);
    return textWriter.ToString();
}
Dictionary inputDict=new Dictionary();
var xmlString=序列化对象(inputDict);
公共静态字符串序列化对象(此T-toSerialize)
{
XmlSerializer XmlSerializer=新的XmlSerializer(typeof(T));
StringWriter textWriter=新StringWriter();
序列化(textWriter,toSerialize);
返回textWriter.ToString();
}