查询XML

XElement strEt1XmlContent = _IOXML.GetEt1XmlContent(strUnitLogPath + "et1.xml");
ArrayList et1ServerHDItems = _ItemsET1.GetHDItems(strEt1XmlContent);
public XElement GetEt1XmlContent(string strUnitLogPathEt1)
        {
            XElement rootEt1 = new XElement("et1", Encoding.UTF8);
            if (!File.Exists(strUnitLogPathEt1))
            {
                return rootEt1;
            }
            try
            {
                rootEt1 = XElement.Load(strUnitLogPathEt1);
            }
            catch (Exception ex)
            {
                string err = ex.Message;
            }
            return rootEt1;
        }
public ArrayList GetHDItems(XElement et1)
        {
            ArrayList aListServerHDItems = new ArrayList();
            if (et1.IsEmpty)
            {
                return aListServerHDItems;
            }
            try
            {
                var query = from b in et1.Descendants("Device")
                            where (b.Element("DeviceName").Value.Contains("HDD") && b.Element("Commodity").Value.Contains("hard_drive"))
                            select b;
                string aListServerHDPartNum = "";
                string aListServerHDVendor = "";
                string aListServerHDCommodity = "";
                string aListServerHDFwRev = "";
                string aListServerHDCapacity = "";
                string aListServerHDCount = "";
                int ServerHDCount = 0;
                foreach (var item in query)
                {
                    if (item.Element("PPID") != null)
                    {
                        aListServerHDPartNum = aListServerHDPartNum + item.Element("PPID").Value.Substring(3, 5).ToString().Trim() + ";";
                    }
                    if (item.Element("Capacity") != null)
                    {
                        ServerHDCount++;
                        aListServerHDCapacity = aListServerHDCapacity + (item.Element("Capacity").Value.ToString().Trim()) + ";";
                    }

                    if (item.Element("Vendor") != null)
                    {
                        if (!aListServerHDVendor.Contains(item.Element("Vendor").Value.ToString().Trim()))
                        {
                            aListServerHDVendor = aListServerHDVendor + (item.Element("Vendor").Value.ToString().Trim()) + ";";
                        }
                    }


                    if (item.Element("Commodity") != null)
                    {
                        if (!aListServerHDCommodity.Contains(item.Element("Commodity").Value.ToString().Trim()))
                        {
                            aListServerHDCommodity = aListServerHDCommodity + (item.Element("Commodity").Value.ToString().Trim()) + ";";
                        }
                    }


                    if (item.Element("FwRev") != null)
                    {
                        if (!aListServerHDFwRev.Contains(item.Element("FwRev").Value.ToString().Trim()))
                        {
                            aListServerHDFwRev = aListServerHDFwRev + (item.Element("FwRev").Value.ToString().Trim()) + ";";
                        }
                    }
                    // Console.WriteLine(item.Element("Commodity").Value);
                }
                aListServerHDCount = ServerHDCount.ToString();

                aListServerHDItems.Add(aListServerHDPartNum);
                aListServerHDItems.Add(aListServerHDCapacity);
                aListServerHDItems.Add(aListServerHDVendor);
                aListServerHDItems.Add(aListServerHDCommodity);
                aListServerHDItems.Add(aListServerHDFwRev);
                aListServerHDItems.Add(aListServerHDCount);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
                throw e;
            }
            return aListServerHDItems;
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值