2010-06-21 80 views
0

我写一个小的测试程序,它给出了下面的XML文件作为输出:xml中的超链接?

<Books> 
    <Fiction> 
    <Name>Book_Name</Name> 
    <Price>price in $</Price> 
    <Details>hyperlink to the book's page</Details> 
    </Fiction> 
</Books> 

我在C#编写这个程序写出来的LINQ这个XML。我想将超链接添加到图书的页面,以便在浏览器中查看此xml时,用户只需点击链接即可转到相应图书的页面。

我试着加入<a href="www.somepage.com">click here for details</a>,但这不起作用。我手动将此行添加到xml文件,我需要知道我是否可以从LINQ和超链接到外部网页做这样的事情?

感谢

回答

3

一种方法是使用一个xslt transform改变你的XML块与链接HTML。

享受!

1

XML不是页面布局的语言。它没有定义如何呈现元素。 HTML会,而且你需要以某种方式转换XML,以便浏览器可以将其呈现给用户。

1
<Books> 
    <Fiction> 
    <Name>Book_Name</Name> 
    <Price>price in $</Price> 
    <Details><![CDATA[<a href="www.somepage.com">click here for details</a>]]></Details> 
    </Fiction> 
</Books> 

您不能这样做,因为文本包含直接元素内容或属性内不允许使用的字符。您需要转义它或使用CDATA section

你如何做到这一点取决于你如何生成XML。