2016-03-07 30 views
0

我想从数据库获取HTML编码值(通过响应文本编辑器控制处理并输入),并将其解码为在Webform页面中显示为普通纯文本。HTML解码Eval数据库列值在ASP.NET Webforms中继器中

我能够获得与Eval方法的值在转发像下面

<p><%#Eval("Content")%></p> 

它完美的罚款。我还试着用下面的代码

<%#Eval("Content").ToString().Length >= 170 ? Eval("Content").ToString().Substring(0, 170) : Eval("Content").ToString()%> 

是否要紧的,提供数据库值是纯文本和HTML没有编码的一个,这是我最近加入到缩短,因此停止工作。

因此,我想知道如果我可以用这下面的代码来解码编码

<%=System.Web.HttpUtility.HtmlDecode()%> 

我试图这样做,但没有喜悦,有人可以帮助或纠正我,如果下面的代码是错误的(我认为)

<%=System.Web.HttpUtility.HtmlDecode(#Eval("Content"))%> 

回答

1

我相信你需要:

<%# System.Web.HttpUtility.HtmlDecode(Eval("Content")) %> 

<%=相当于Response.Write<%#是数据绑定语法,这是您在这种情况下需要的。 Eval调用上的哈希前缀是无效的语法。

这是一个有用的参考,以解释各种ASP.NET服务器内嵌标签之间的区别:http://weblogs.asp.net/ahmedmoosa/embedded-code-and-inline-server-tags

+0

非常感谢你的回答,它帮助我做的正是我问。然而,在这个成功之后,我终于遇到了其他问题,实际上我试图检索通过输入控件馈送的段落,并且一些自动类已经在段落中创建了一些方法,现在我的博客滑块 –

+0

没有问题。如果你能把这个标记为答案,那将会很棒。然后,如果您需要有关您的其他问题的帮助,请提问! – getsetcode

相关问题