当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP+学习笔记(二)

ASP
asp下检查表中是否存在某个字段(列)函数
ASP批量更新代码
asp飞飞无限级分类v1.0 Asp+sql+存储过程+ajax提供下载
比较详细的ASP rs.open语句详细说明
可以应用到马克斯电影站生成Rss Feed的代码
ASP 无限级分类实现
从数据库中读取记录横向排列
ASP动态级联菜单实现代码
网上用的比较多的asp级联菜单效果代码
ASP提高数据显示效率-缓存探幽
asp经常被忽视的一种死循环
关于Asp代码与页面的分离模板技术
用GetString提高ASP的速度
用cookies实现闪电登录论坛方法
一个不太让人讨厌的自动弹出窗口
asp格式化日期时间格式的代码
ASP变量加变量实现代码
asp向数据库插入数据的方法rs
asp上传带显示的代码
asp防止垃圾留言代码

ASP+学习笔记(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 178 ::
收藏到网摘: n/a

  5).Pagelet控件
    自己做控件最简单的方法就是Pagelet控件,后缀为.aspc,用Register指令包含到WebForm中:
    <%@ Register TagPrefix="Acme" TagName="Message" Src="pagelet1.aspc" %>
    TagPrefix是Pagelet的名称空间定义,TagName是给Pagelet取的名字。Src属性是虚拟目录。
    Pagelet的使用:
    <Acme:Message runat="Server"/>
    。暴露Pagelet的方法,像一个类一样定义属性,例:
    <script language="c#" runat="server">
    public String Address{
        get{
            return TxtAddress.Value;
        }
        set{
            TxtAddress.Value=value;
        }
    }
    </script>
    <input id="TxtAddress" runat="server">
    。封装事件
    略
    可以看出,Pagelet可以取代include文件的作用。
    。编程创建Pagelet对象
    可以用程序生成Pagelet控件的实例,如:
    Control cl=LoadControl("pagelet2.aspc");
    ((Pagelet2_aspc)cl).Category="business";
    Page.Controls.Add(cl);
    注意,因为LoadControl函数返回一个System.Web.UI.Control对象,因此需要造型。Pagelet
的类型为文件名,点号换成下划线。

6).数据帮定控件
    asp+中,不仅可以帮定到数据库,还可以帮定到简单的属性集合,甚至方法调用的结果,如:
    CustomerID: <%# custID %>
    <asp:ListBox id="List1" datasource='<%# myArray %>' runat="server">
    <%# (Customer.FirstName + Customer.LastName)%>
    <%# GetBalance(CustID) %>
    看起来跟asp中的<%=%>一样,但是ASP是用Response.Write来替换的,而ASP+则是在DataBind()
方法调用后才帮定的。数据帮定控件和Page对象都有DataBind()方法。
    注意,asp+是强类型的,所以:
        <%# count.ToString() %>才对。
    。DataBinder.Eval()
    一个静态方法,由ASP+支持,允许后帮定的数据帮定表达式,而且还可选地转化为串,可以
用于模板。如不用Eval,则像:
    <%# String.Format("{0:c}",((DataRowView)Container.DataItem)["SomeInteger"]) %>
    可以用Eval:
    <%# DataBinder.Eval(Container.DataItem,"someinteger","{0:c}") %>
    
7).服务器方数据访问
    。连接、命令和数据集(DataSets)
    NGWS提供了一系列受管数据访问API,引入名称空间:
    <%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.SQL" %>
    a).生成SQLConnection
    b).构造SQLDatasetCommand
    c).FillDataSet
    如果是插入等操作,则用SQLCommand替换SQLDataSetCommand.
    记住:始终在用完连接后关闭连接!否则要等到页面被释放时才会被垃圾回收机制释放资源。
    。帮定数据到DataGrid,例:
        ....
        DataSet ds = new DataSet();
        myCommand.FillDa