易截截图软件、单文件、免安装、纯绿色、仅160KB

揭秘ASP.NET 2.0的Eval方法

来源:http://www.pccode.net/info/2010/01/25/20100125-1220.html
实际上Eval方法是TemplateControl的,而System.Web.UI.Page和System.Web.UI.UserControl都继承于TemplateControl,所以我们可以在Page和UserControl上直接调用个方法。  
   
     Page.Eval方法可以帮助我们更好的撰写数据绑定表达式,在ASP.NET   1.x时代,数据绑定表达式的一般形式是:
 <%# DataBinder.Eval(Container,“DataItem.Name”)   %>  
     而在ASP.NET   2.0中,同样的代码,我们可以这样写:
 
<%# Eval(“Name”)%>
 
     ASP.NET   2.0是怎么实现的呢?我们先从Eval方法来研究,通过反射.NET  fromwork   2.0类库的源代码,我们可以看到这个方法是这样实现的:
  
protected   internal   object   Eval(string   expression)  
{  
     this.CheckPageExists();  
     return   DataBinder.Eval(this.Page.GetDataItem(),   expression);  
}  
     第一行我们不必管,这是检查调用的时候有没有Page对象的,如果没有则会抛出一个异常。   关键是第二行:  
 
 return   DataBinder.Eval(this.Page.GetDataItem(),   expression);  
 
     Page.GetDataItem()也是2.0中新增的一个方法,用途是正是取代ASP.NET   1.x中的Container.DataItem。  
     看来不摸清楚GetDataItem()方法,我们也很难明白Eval的原理。GetDataItem的实现也很简单:
 
public   object   GetDataItem()  
{  
     if   ((this._dataBindingContext ==  null) || (this._dataBindingContext.Count == 0))  
     {  
       &nbs


相关文档:

Asp.Net Button的UseSubmitBehavior属性

在某页面上有如下信息,
Html,
<asp:Button ID="btn" runat="server" Text="Click me" OnClick="ButtonClicked" />
<script language="javascript">
function javascriptMethod() {
alert(1);
}

</script>
C#,
protected void ButtonClic ......

C# ASP.NET里@的妙用

C# ASP.NET里@的妙用
ASP.NET C# string 字符串的前面可以加 @ 可以将转义字符(\)当作普通字符对待。
比如:string str = @"C:\Windows";
如果我们不用 @ 的话,应该是:string str = "C:\\Windows";
 
@ 字符串中,我们用两个连续英文双引号表示一个英文双引号,如下字符串的实际内容为:="=,字符串长度为 3 ......

ASP.NET的错误处理机制

对Web应用程序来说,发生不可预知的错误和异常在所难免,我们必须为Web程序提供错误处理机制。当错误发生时,我们必须做好两件事情:一是将错误信息记录日志,发邮件通知网站维护人员,方便技术人员对错误进行跟踪处理;
二是以友好的方式提示最终用户页面发生了错误,而不能将未处理的错误信息显示给用户。
 
&nbs ......

asp.net 发送邮件

web.config
    <system.net>
        <mailSettings>
            <smtp deliveryMethod="Network" from="mymail&lt;you@163.com&gt;">
       ......

asp.net结合aspnetpager用sql语句分页

数据库操作类:
复制代码 代码如下:
/// <summary>
/// 取得总数
/// </summary>
/// <returns></returns>
public string getTotal()
{
StringBuilder sb = new StringBuilder();
sb.Append("select count(*) total from Test");
DataTable dt = DBHelper.ExecuteDt(sb.ToString ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号