.Net中数据绑定总结

1098人阅读 评论(0) 收藏 举报

数据绑定可以说是最令人愉快的功能之一。这种非常灵活的语法允许开发人员不仅可以绑定到数据源,而且可以绑定到简单属性、集合、表达式甚至是从方法调用返回的结果

1、可以绑定的有:A、属性 B、方法 C、表达公式

绑定属性:<%# property-name%>

举例:

前台页面:

<%# dir %>

后台页面: 用属性返回

    public string dir
    {
        
get 
        {
            
switch (aChannel)
            {
                
case 1return "htmlLw/";
                
case 2return "htmlAl/";
                
case 3return "htmlTz/";
                
case 4return "htmlBz/";
                
case 5return "htmlYb/";
                
case 6return "htmlRj/";
                
defaultreturn "~/";
            }
        }
    }

 再看一个图片例子

前台页面:

后台页面:

****************************************************************

绑定方法: <%#method-name(parameter……)%>

前台页面:

<%# formatString( (String)DataBinder.Eval(Container.DataItem,"aName")) %>

后台页面:

    public string formatString(string str)
    {
        
if (str.Length > 16)
        {
            str 
= str.Substring(016);
        }
        
return str;
        
    }

 

<%#expression%>

2、单值绑定的数据源:A、在页面、另一控件或对象中声明的属性值 B、从页面、另一控件或对象中声明的方法返回的值 C、对表达式求值的结果

3、单值绑定的方法:A、模板定义 B、运行是设置控件属性 C、EVAL表达式<%#databinder.eval(datasource,"[2].fielame","{0:D}")%> 

DataBinder.Eval的基本格式(xxxx指数据库字段)

在绑定数据时经常会用到这个句程序:

<%# DataBinder.Eval(Container.DataItem,"xxxx")%>或者

<%# DataBinder.Eval(Container,"DataItem.xxxx")%>

关键是Container这个东西,它比较神秘。它的名称空间是System.ComponentModel,我把理解成控件的数据项

今天又学到一种,而且微软也说这种方法的效率要比以上两种高。

<%# ((DataRowView)Container.DataItem)["xxxx"]%>

在.Net 1.x中绑定用

<%# DataBinder.Eval( Container.DataItem",xxxx") %>或

<%# DataBinder.Eval( Container , "DataItem.xxxx",{0,1:"MM","dd"}) 

而在ASP.NET 2.0中,同样的代码,我们可以这样写:

<%# Eval( "xxxx" )%> 或

<%# Eval( "xxxx",{0:d} )%>

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:673537次
    • 积分:9231
    • 等级:
    • 排名:第1990名
    • 原创:206篇
    • 转载:100篇
    • 译文:16篇
    • 评论:204条
    最新评论