如何在ASP.NET Web应用程序中读取XML文件数据 [英] How to read XML file data in ASP.NET web application

查看:75
本文介绍了如何在ASP.NET Web应用程序中读取XML文件数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,

这里我想读取xml文件data.Xml文件是用户的集合,其中每个用户都拥有UserName和Modules权限。这里我想要选择的用户模块列表使用我可以启用并禁用asp.menu。



请帮助我。

提前感谢..



我尝试过:



以下代码用于读取xml文件



Hello everyone,
here i want to read xml file data.Xml file is collection of users where each user has UserName and Modules rights.Here i want selected users modules list using that i can enable and disable asp.menu.

Please help me.
thanks in advance..

What I have tried:

following code is used to read xml file

private void LoadXmlData()
       {
           XmlDocument xmlDoc = new XmlDocument();
           xmlDoc.Load(Server.MapPath("~/App_Data/UserRights.xml"));

           UName = xmlDoc.GetElementsByTagName("LoginName");
           ModulList = xmlDoc.GetElementsByTagName("Modules");

          foreach(XmlNode userNode in  UName)
          {
              if (userNode.InnerText == Session["UserName"].ToString())
               {
                   Response.Write("UserVame="+userNode.InnerText);
                   foreach (XmlNode moduleNode in ModulList)
                   {
                       Modules.Add(moduleNode.InnerText);

                   }

               }
           }

       }







这显示了我所有用户模块列表。



这是我的xml文件




this shows me all users modules list.

this is my xml file

<Root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Rights>
    <Right>
      <LoginName>Kundan.Khadapkar</LoginName>
      <Modules>Inter-Location Transfer</Modules>
    </Right>
    <Right>
      <LoginName>Kundan.Khadapkar</LoginName>
      <Modules>FileDownloder</Modules>
    </Right>

    
    <Right>
      <LoginName>Kundan.Khadapkar</LoginName>
      <Modules>Item Master</Modules>
    </Right>
    <Right>
      <LoginName>Pranaysail</LoginName>
      <Modules>Inter-Location Transfer</Modules>
    </Right>

    <Right>
      <LoginName>Pranaysail</LoginName>
      <Modules>UpLoadDownloadSetup</Modules>
    </Right>
    <Right>
      <LoginName>Abhijit.Adik</LoginName>
      <Modules>Inter-Location Transfer</Modules>
    </Right>
    <Right>
      <LoginName>Abhijit.Adik</LoginName>
      <Modules>FileDownloder</Modules>
    </Right>
  </Rights>
</Root>







这里我只想选择用户模块列表..




Here i want only selected users modules list..

推荐答案

您想使用appendChild在当前文件中创建新子项。

我没有看到模块认为它是一个列表或者什么。

You want to use appendChild for creating new child in the current file.
I don't see Modules think it is a list or something.
private void LoadXmlData()
       {
           XmlDocument xmlDoc = new XmlDocument();
           xmlDoc.Load(Server.MapPath("~/App_Data/UserRights.xml"));
           var userList = new list(of string, string)
           var nodes = (xmlDoc.GetElementsByTagName("Rights")[0]).GetElementsByTagName("Right");

           foreach (node in nodes)
           {
               var login = node.GetElementsByTagName("UserName")[0];
               var module = node.GetElementsByTagName("Modules")[0];

               // this is what you would like to do instead of write appendChild
               newNode = xmlDoc.createElement("UserVame");
               node.GetElementsByTagName("Modules")[0].appendChild(newNode)

               //you can save it if needed
               userList.add(login, module)
           }
       }


这篇关于如何在ASP.NET Web应用程序中读取XML文件数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆