-1

我需要从 sql server 数据库中读取数据 - 它有一个 xml 类型的列。我必须将数据绑定到 datalist 中的标签,如下所示

<ItemTemplate>
   <strong>PostedXml: </strong>
   <asp:Label ID="PostedXmlLabel" runat="server" Text='<%# Eval("PostedXml") %>' />      
</ItemTemplate>

读取数据时,标签不会显示。只有值正在呈现。我们如何在标签控件上显示带有标签的完整 xml?

谢谢

4

2 回答 2

1

Ideally you should be able to Encode the XML so it will render on screen tags-and-all.

Try replacing

Text='<%# Eval("PostedXml") %>'

With

Text='<%# System.Web.HttpUtility.HtmlEncode((string)Eval("PostedXml")) %>'

Or if you're using VB, try this:

Text='<%# System.Web.HttpUtility.HtmlEncode(DirectCast(Eval("PostedXml"), String)) %>'
于 2013-06-12T13:59:59.737 回答
0

您可以使用XML 控件 <asp:xml> 代替标签,但它需要使用 XSLT 进行格式化。另一种选择是使用<asp:Literal>控件或<asp:Text>,这将需要对 xml 进行编码。使用Server.HtmlEncode.

于 2013-06-12T14:18:59.623 回答