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

ASP
ASP视频教程:后台页面加入限制访问和禁用缓存功能
ASP视频教程:制作网站前台首页
ASP视频教程:备份和还原SQL Server 2000数据库
ASP实例教程:asp无限级显示分类代码
IIS无法启动错误的几种情况汇总
asp Http_Referer,Server_Name和Http_Host
ASP 调用带参数输出的COM接口
隐藏修改文件时间和文件属性的ASP脚本
ASP Crazy 模版操作类(最简单的模板类、仅提供交流)
asp 动态数组 提供Add、Insert、Remove、RemoveAt、Search等方法。
asp 取一个数的整数 但不是四舍五入,只要有小数,就取大于这个数的整数
asp 判断上传文件中是否存在危险代码
asp 获取url函数小结
ASP 调用dll及封装dll实例
asp 实现的冒泡排序程序
asp 自定义分段函数/求第N名成绩
ASP 高级模板引擎实现类
ASP 常见的连接字符串写法(access2007)
ASP向Excel导数据(图片)终结版 ASP操作Excel
ASP实现防止网站被采集代码

ASP+学习笔记(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 242 ::
收藏到网摘: 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