C#针对xml文件转化Dictionary的方法

本文实例讲述了C#针对xml文件转化Dictionary的方法。分享给大家供大家参考。具体实现方法如下:

下面是xml文件:

<?xml version="1.0" encoding="utf-8" ?>

<nodes>

<国土局>

<name>市局国土资源局</name>

<code>330</code>

<受理 telephone="88205156">萍,倩</受理>

<审核 personId="48e1bca3-b0f5d0fec89">友</审核>

<审定>123</审定>

<BELONGSYSTEM>37001</BELONGSYSTEM>

<DEPTID>10080100030</DEPTID>

<SERVICECODE>4e58a6f1</SERVICECODE>

</国土局>

<国土局>

<name>县国土资源局</name>

<code>3321</code>

<受理 telephone="13819655058">晨</受理>

<审核 personId="f7351d0f-b197-0a0fc685f3ac">辉</审核>

<审定>456</审定>

<BELONGSYSTEM>123</BELONGSYSTEM>

<DEPTID>00100033</DEPTID>

<SERVICECODE>

204cdd0b

</SERVICECODE>

</国土局>

</nodes>

下面是相关的获取方法:

/// <summary>

/// 获得受理信息

/// </summary>

/// <param name="p_shixianCode">市县编码</param>

/// <returns>受理信息</returns>

public static  Dictionary<string,string> ShouLiInfo(string p_shixianCode)

{

   XDocument xd = null;

   string xmlPath = "config.xml";

   xd = XDocument.Load(xmlPath);//xml存放路径

   Dictionary<string, string> pDic = new Dictionary<string, string>();    var info = from t in xd.Root.Descendants("国土局").Where(p => p.Element("code").Value == p_shixianCode) select new { name = t.Element("name").Value, code = t.Element("code").Value, shouli = t.Element("受理").Value, telephone = t.Element("受理").Attribute("telephone").Value, shenhe = t.Element("审核").Value, personId = t.Element("审核").Attribute("personId").Value, shending = t.Element("审定").Value, DEPTID = t.Element("DEPTID").Value, BELONGSYSTEM = t.Element("BELONGSYSTEM").Value, SERVICECODE = t.Element("SERVICECODE").Value };    foreach (var item in info)    {        pDic.Add("name", item.name);        pDic.Add("code", item.code);        pDic.Add("shouliPerson", item.shouli);        pDic.Add("telephone", item.telephone);        pDic.Add("shenhePerson", item.shenhe);        pDic.Add("shenhepersonId", item.personId);        pDic.Add("shendingPerson", item.shending);        pDic.Add("DEPTID", item.DEPTID);        pDic.Add("BELONGSYSTEM", item.BELONGSYSTEM);        pDic.Add("SERVICECODE", item.SERVICECODE);    }    return pDic; }


  

就这样啦就可以了,直接调用该方法就可以啦

希望本文所述对大家的C#程序设计有所帮助。