XML在ASP中的一些运用
来源: 时间:06-12-25 点击: 点击这里收藏本文
%>
<html>
<body>
<center>
<form name = "fr1">
<select>
<option value="none" selected>选择发行人</option>
<% call objScpQuery2list.query2list(objConn, sql) %>
</select>
</form>
</center>
</body>
</html>
<%
objConn.Close
Set objConn = nothing
Set objScpQuery2list = nothing
%>
出现的问题:
第一次使用scriptlets有可能会出现这样的问题,就是内存浪费现象,改进方法如下:
将ASP对象传递给scriptlets,而代替使用ASP接口。(就是不使用 <implements type="ASP" id="ASP"/>申明)
testscp.sct:
<?XML version="1.0"?>
<scriptlet>
<?scriptlet error="true" debug="true"?>
<registration
description="testscp"
progid="testscp.Scriptlet"
version="1.00"
classid="{78a33aa0-335d-11d3-a9a9-0080c8034244}"
>
</registration>
<public>
<property name="cnnState">
<get/>
</property>
<method name="TestWrite">
<parameter name="sHTML"/>
</method>
<method name="TestWriteLine">
<parameter name="sHTML"/>
</method>
<method name="ASPConnect">
<parameter name="oServer"/>
<parameter name="oApplication"/>
<parameter name="oSession"/>
<parameter name="oRequest"/>
<parameter name="oResponse"/>
</method>
</public>
<script language="VBScript">
<![CDATA][
Private cnnState, Server, Application, Session, Request, Response
cnnState = False
Function get_cnnState()
get_cnnState = cnnState
End Function
Sub ASPConnect(oServer, oApplication, oSession, oRequest, oResponse)
Set Server = oServer
Set Application = oApplication
Set Session = oSession
Set Request = oRequest
Set Response = oResponse
cnnState = True
End Sub
Sub TestWrite(sHTML)
Response.Write sHTML
End Sub
Sub TestWriteLine(sHTML)
Response.Write sHTML & "<BR>"
End Sub
]]>
</script>
</scriptlet>
传递ASP对象的ASP程序如下:
testscp.asp代码
<%
Set scrip=Server.CreateObject("testscp.Scriptlet")
if Err then
Response.Write "<BR>Error:" & Err.Number
Response.Write "<BR>" & Err.Description
Response.Write "<BR>" & Err.Source
Response.End
End If
Response.Write "<BR> cnnState=" & scrip.cnnState
if Err then
Response.Write "<BR>Error:" & Err.Number
Response.Write "<BR>" & Err.Description
Response.Write "<BR>" & Err.Source
Response.End
End If
Response.Write "<BR>Connecting..."
scrip.ASPConnect Server, Application, Session, Request, Response
if Err then
把此文章收藏到: