精华区 [关闭][返回]

当前位置:月光软件>>讨论区精华>>〖软件开发〗>>● ASP>>★ASP的延伸★>>ASP.NET>>ASP+中取代ASP的RS(Remote Scripting)技

主题:ASP+中取代ASP的RS(Remote Scripting)技
发信人: dongbao()
整理人: (2000-10-28 10:35:58), 站内信件
 Page.IsPostBack属性的一个应用,就是取代ASP中的RS(Remote Scripting)技
术。至于RS的基本概念和用法我已经在asp版里面有很多介绍了,它主要的优势就
是在不刷新当前页面的情况下和服务器端进行通信。但是由于它的底层是使用了
java技术,所以它用起来还是显得较为烦琐,下面我就将介绍在ASP+中如何利用
Page.IsPostBack来取代RS技术。
 按照我的习惯是喜欢用具体的例子来解释问题,所以这次还是使用一个简单的
实例来说明问题。下面这个例子中,将使用一个Products.aspx程序,它主要有两
个服务器端控件(Server-side control),这是asp+里面引入的新的控件编程方
式,一个是一个下拉框控件--'mudCategories',另外一个是列表框控件--'
mudProducts'。这个例子将演示,列表框中的内容将跟随下拉框中内容的改变而
改变,为了大家重现的方便,我将使用SQL Server中自带的数据库例子来实现。

Products.aspx代码如下:


代码:
----------------------------------------------------------------------
----------

<%@ Import Namespace="System.Data"%><%@ Import Namespace="System.Data.
ADO"%><script language="VB" runat="server">Sub Page_Load (SourceObj as
 Object, EveArg as EventArgs)If Not Page.IsPostBack Then        Dim mu
dCommand As ADODataSetCommand    Dim mudConnection As ADOConnection   
 Dim dSet As New DataSet    Dim strSQL as String    Dim connStr as Str
ing                strSQL = "SELECT CategoryID, CategoryName From Cate
gories"    connStr = "Provider = SQLOLEDB; Data Source=test; Initial C
atalog=Northwind; User         ID=sa; password=;"    mudConnection = N
ew ADOConnection(connStr)            mudCommand = New ADODataSetComman
d(strSQL,  mudConnection)            mudCommand.FillDataSet(dSet, "Cat
egories")                mudCategories.DataSource = dSet.Tables("Categ
ories").DefaultView    mudCategories.DataBind()End IfEnd SubSub displa
yProducts (Source as Object, EveArg as EventArgs)    Dim mudCommand As
 ADODataSetCommand    Dim mudConnection As ADOConnection    Dim dSet A
s New DataSet    Dim strSQL as String    Dim connStr as String        
connStr = "Provider = SQLOLEDB; Data Source=test; Initial Catalog=Nort
hwind; User     ID=sa; password=;"            strSQL = "Select Product
ID, ProductName From Products"    strSQL = strSQL & " WHERE CategoryID
 = " & mudCategories.SelectedItem.Value             mudConnection = Ne
w ADOConnection(connStr)        mudCommand = New ADODataSetCommand(str
SQL,  mudConnection)            mudCommand.FillDataSet(dSet, "Products
")                mudProducts.DataSource = dSet.Tables("Products").Def
aultView    mudProducts.DataBind()End Sub    </script><html><form name
="mudForm" runat="server">    产品目录: <asp:DropDownList id="mudCateg
ories" runat="server" DataTextField="CategoryName" DataValueField="Cat
egoryID" AutoPostBack="true" OnSelectedIndexChanged="displayProducts"/
>产品: <asp:ListBox id="mudProducts" SelectionMode="Multiple" DataValu
eField="ProductID" DataTextField="ProductName" runat="server" /></htm
l>

----------------------------------------------------------------------
----------

 从例子程序可以看到,其中显然是使用了服务器端控件的下拉框OnChange事件
配合AutoPostBack和Page.IsPostBack属性就可以很简单和清晰的实现了以前在a
sp中烦琐的RS实现方法。
呵呵,希望大家从上面的这个例子中有所收获。


--
ICQ:43395237 OICQ:126132  
我自豪我用正版,我骄傲我用盗版!!! 

※ 来源:.月光程序代码网 http://www.moon-soft.com.[FROM: 202.108.0.4]

[关闭][返回]






转载请注明:转载自 月光程序代码网 [ http://www.moon-soft.com ]