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

Bind和Eval的不同用法 (asp.net C#)

今天在用DataList的模板列的时候习惯性地像在03中那样去给模板列的绑定字段加个处理函数:
 < asp:Label ID = " Label1 " runat = " server " Text = ' <%#ConvertState(Bind("Status"))%> ' ></ asp:Label >
     可是竟然出错:当前上下文中不存在名称“Bind” 。    
     后来又习惯性地想把绑定字段单独拿出来显示,又提示:警告 2 设计器文件生成失败: 必须将对 Bind 的调用分配给模板中的控件的属性。 感觉很郁闷,于是把Bind换成Eval一点问题都没了。
 < asp:Label ID = " Label1 " runat = " server " Text = ' <%#ConvertState(Eval("Status"))%> ' ></ asp:Label >
   上网查一下才发现二者的区别:
eval()方法在运行时使用反射执行后期绑定计算,因此与标准的ASP.NET数据绑定方法bind相比,会导致性能明显下降。它一般用在绑定时需要格式化字符串的情况下。多数情况尽量少用此方法
Eval 方法是静态(只读)方法,该方法采用数据字段的值作为参数并将其作为字符串返回。Bind 方法支持读/写功能,可以检索数据绑定控件的值并将任何更改提交回数据库。
使用 Eval 方法
Eval 方法可计算数据绑定控件(如 GridView、DetailsView 和 FormView 控件)的模板中的后期绑定数据表达式。在运行时,Eval 方法调用 DataBinder 对象的 Eval 方法,同时引用命名容器的当前数据项。命名容器通常是包含完整记录的数据绑定控件的最小组成部分,如 GridView 控件中的一行。因此,只能对数据绑定控件的模板内的绑定使用 Eval 方法。
Eval 方法以数据字段的名称作为参数,从数据源的当前记录返回一个包含该字段值的字符串。可以提供第二个参数来指定返回字符串的格式,该参数为可选参数。字符串格式参数使用为 String 类的 Format 方法定义的语法。
使用 Bind 方法
Bind 方法与 Eval 方法有一些相似之处,但也存在很大的差异。虽然可以像使用 Eval 方法一样使用 Bind 方法来检索数据绑定字段的值,但当数据可以被修改时,还是要使用 Bind 方法。 
在 ASP.NET 中,数据绑定控件(如 GridView、DetailsView 和 FormView 控件)可自动使用数据源控件的更新、删除和插入操作。例如,如果已为数据源控件定义了 SQL Select、Insert、Delete 和 Update 语句,则通过使用 GridView、DetailsView 或 Form


相关文档:

asp及asp.net的urlencode问题

我想在asp中加一个链接,指向asp.net网页,但asp.net的网址是经过HttpUtility.UrlEncode变形和HttpUtility.UrlDecode变回的,而asp的server.urlencode却产生不了和HttpUtility.UrlEncode一样的编码,请问有没有解决办法
补充:原来asp.net的是"web.aspx?str="+HttpUtility.UrlEncode(str)
和HttpUtility.UrlDecode(Requ ......

Asp.Net常用的三十三种代码

1. 打开新的窗口并传送参数:
  传送参数:
response.write("<script>window.open(’*.aspx?id="+this.DropDownList1.SelectIndex+"&id1="+...+"’)</script>")
  接收参数:
string a = Request.QueryString("id");
string b = Request.QueryString("id1");
  2.为按钮添加对话框
Button1 ......

ASP.NET MVC2 学习笔记之URL路由

    新建一个默认的ASP.NET MVC2应用程序,系统会默认的生成包含基本功能的应用程序,查看这些生成的代码,可帮助我们理解ASP.NET MVC2。下面是对URL路由的理解,以备忘。
一、Global.asax.cs中的代码:
public class MvcApplication : System.Web.HttpApplication
    {
  &n ......

ASP.NET Mischellous

@Register : Register a user control or class with alias to this page.
@Import: Import a namespace.
@Reference: Link user controls or other page to complile current page. 支持数据跨页面的传送
页面事件:PreInit(创建服务器控件), Init(初始化服务器控件的状态), InitComplete,PreLoad, Load, Lo ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号