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

ASP
在ASP程序中实现数据库事务控制
怎样开始一个ASP网站的设计
ASP中使用ServerVariables集合详解
关于解决商务平台ASP程序的源代码泄漏设想与思考
ASP通用模板类
javascript利用xmlhttp获得服务器时钟的方法
asp+oracle分页程序类(XDOWNPAGE2.0)
ASP中实现小偷程序的原理和简单
asp中vbscript访问xml文件
ASP防SQL注入攻击程序
用ASP读INI配置文件的函数
asp实现关键词获取(各搜索引擎,gb2312及utf-8)
xmlhttp组件获取远程文件并筛选出目标数据
XMLHTTP Get HTML页面时的中文乱码之完全客户端Script解决方案
WEB打印设置解决方案一(通过修改注册表改变IE打印设置)
WEB打印设置解决方案二(利用ScriptX.cab控件改变IE打印设置)
WEB打印设置解决方案三(FileSystem组件实现WEB打印)
WEB打印设置解决方案四(在ASP中实现网络打印功能)
ASP实用技巧 强制刷新网页
Access通用-自动替换数据库中的字符串

ASP+学习笔记(二)


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