日期:2014-05-19  浏览次数:20434 次

怎样实现在asp.net网页的前台页面(.aspx)中运行代码块,谢谢!
我想在页面中的GridView控件中显示某条信息的标题,代码如下:

<asp:TemplateField     HeaderText= "信件内容 ">
    <ItemTemplate>
        <%#   Server.HtmlDecode(Eval( "Body ").ToString())   %>
    </asp:TemplateField>

在后台绑定了GridView的数据源,现在页面也能正常显示内容。

之所以用HtmlDecode来显示,就是因为怕某些用户输入 <script> 这类的危险代码。事实证明如果在后台文件(.aspx.cs)中用这样的语句是可以完全避免的。但是为什么在前台文件(.aspx)中用 <%#   %> 这样的语句不行呢?

(在VS中提示:“运行时错误,不能执行代码块”之类的信息)

请大家帮忙,怎样写 <ItemTemplate> 里面的东西呢,谢谢!

------解决方案--------------------
<%# Server.HtmlEncode(DataBinder.Eval(Container.DataItem, "Body ").ToString())%>
------解决方案--------------------
在.aspx中有這樣的函數嗎??ToString()
------解决方案--------------------
暈﹗按LZ的可以運行﹐也沒有報錯﹗
------解决方案--------------------
用可视化
在设计里编辑模板
------解决方案--------------------
楼主的代码是对的
------解决方案--------------------
<%# Server.HtmlEncode(DataBinder.Eval(Container.DataItem, "Names ").ToString())%>

這個是可以的呀
------解决方案--------------------
分清兩個不同的意思﹕
HtmlEncode
HtmlDecode
------解决方案--------------------
同意trainli(男人要有霸气得有钱)的

你是否分清楚E和D的区别了?
------解决方案--------------------
学习一下
------解决方案--------------------
学习帮顶了,没有遇到过哦