C# 如何显示xml数据并找到用户单击的数据?

C# 如何显示xml数据并找到用户单击的数据?,c#,javascript,asp.net,xml,C#,Javascript,Asp.net,Xml,我使用的是asp.net,有一个xml文件,如下所示: <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/css" href="Style.css"?> <CATALOG> <note> <TITLE>Tutorial</TITLE> <Tut> <Episode>Episode 1&l

我使用的是asp.net,有一个xml文件,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="Style.css"?>
<CATALOG>
<note>
    <TITLE>Tutorial</TITLE>
    <Tut>
        <Episode>Episode 1</Episode>
        <Link>http://www.link1.com</Link>
    </Tut>
    <Tut>
        <Episode>Episode 2</Episode>
        <Link>http://www.link2.com</Link>
    </Tut>
    <Tut>
        <Episode>Episode 3</Episode>
        <Link>http://www.link3.com</Link>
    </Tut>
    <Tut>
        <Episode>Episode 4</Episode>
        <Link>http://www.link4.com</Link>
    </Tut>
</note>
</CATALOG>

辅导的
第一集
http://www.link1.com
第二集
http://www.link2.com
第三集
http://www.link3.com
第四集
http://www.link4.com
我试图在data.aspx中显示xml数据 我只想垂直播放一些片段,比如: 第一集 第二集 第三集 第四集 所以我的第一个问题是,我必须使用gridview还是可以使用其他任何东西?
对于第二部分,当用户单击第1集时,我想获得它的链接,在本例中是“”(但我不在这里显示),并将其设置为一个字符串变量,可能是在代码隐藏中,也可能是在会话中!我怎样才能做到这一点呢?

回答1::如果你只需要使用两个字段,那么我建议使用repeater控件,因为它是一个重量较轻的控件

在线示例:

回答2:将XML反序列化到类对象,并将其指定为中继器的数据源。在中继器中添加链接按钮,并将设置文本值显示为插曲和href设置链接


在线示例:

对于第二部分,我更喜欢使用xml而不是linq:

  XElement myXML = XElement.Load(@"C:\Users\Admin\Desktop\episode.xml");
  var tutDescendantsList = (from ep in myXML.Descendants("Tut")
                            select new { Episode = ep.Element("Episode").Value, Link = ep.Element("Link").Value }).ToList();
要从TutGenderantsList获取元素:

  string myfirstEpisode = tutDescendantsList[0].Episode;
  string myfirstLink = tutDescendantsList[0].Link;

谢谢你的回复。repeater听起来是个好主意,我想我会使用它,但第二部分,即使我使用链接按钮,我也无法获取url并将其传递给变量!从技术上讲,我不想将用户重定向到链接,我只想获得链接并将其分配给变量!哦,好的。所以在这种情况下,您可以使用标签和文本框。标签将显示该集的名称,文本框将显示该集的url。如果有帮助的话,别忘了把它标记为答案。你的意思是:。我得到以下错误:解析器错误描述:在解析服务此请求所需的资源时发生错误。请查看以下特定的解析错误详细信息,并适当修改源文件。这是红色部分: