相關(guān)資訊
本類常用軟件
-
福建農(nóng)村信用社手機銀行客戶端下載下載量:584204
-
Windows優(yōu)化大師下載量:416896
-
90美女秀(視頻聊天軟件)下載量:366961
-
廣西農(nóng)村信用社手機銀行客戶端下載下載量:365699
-
快播手機版下載量:325855
這篇文章給大家分享學習的是關(guān)于ASP內(nèi)置對象ObjectContext詳解,希望對初學ASP的朋友們能夠帶來幫助。
您可以使用 ObjectContext 對象提交或放棄一項由 microsoft Transaction Server (MTS) 管理的事務(wù),它由 ASP 頁包含的腳本初始化。
ASP 包含 @TRANSACTION 指令時,該頁會在事務(wù)中運行,直到事務(wù)成功或失敗后才會終止。
語法
ObjectContext.method
方法
SetComplete SetComplete 方法聲明腳本不了解事務(wù)未完成的原因。如果事務(wù)中的所有組件都調(diào)用 SetComplete,事務(wù)將完成。
SetAbort SetAbort 方法聲明被腳本初始化的事務(wù)未完成,無法更新源。
事件
OnTransactionCommit
OnTransactionAbort
注釋
ObjectContext 實現(xiàn) MTS ObjectContext 對象的兩種方法。 SetAbort 方法完全終止事務(wù)。這樣,MTS 不更新在第一階段聯(lián)系的源。事務(wù)終止時,將處理腳本的 OnTransactionAbort 事件。
調(diào)用 SetComplete 方法并不一定意味著事務(wù)已完成。只有腳本調(diào)用的所有事務(wù)組件都調(diào)用了 SetComplete,事務(wù)才能完成。在大多數(shù)實例中,如果結(jié)束處理時未調(diào)用 SetAbort,腳本通常被假定為完成的,所以不一定要在腳本內(nèi)調(diào)用 SetComplete。
ObjectContext 展示了 SetAbort 和 SetComplete 以外的六種方法。這些方法可用于腳本調(diào)用的組件,但不能直接用于 ASP 腳本。
示例
這里示范使用 SetAbort 和 SetCommit 的方法。Sales.htm 文件獲取處理銷售請求所需的數(shù)據(jù)。第二個文件——SalesVerify.asp 中的腳本使用兩個對象——Inventory 和 Sales 處理銷售。如果 Inventory 返回了錯誤代碼表示供銷售的存貨不足,就會調(diào)用 SetAbort。如果 Inventory 對象沒有返回錯誤代碼,將會調(diào)用 SetComplete 處理銷售請求。
Sales.htm
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<TITLE>Sales Order</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<FONT FACE="ARIAL,HELVETICA">
<H2>Sales Order Form </H2>
<FORM METHOD=POST ACTION="SalesVerify.asp">
<P>Please enter the product code, quantity, and your account number.
<INPUT TYPE=TEXT NAME=QuantityToBuy>
<INPUT TYPE=TEXT NAME=ProductCode>
<INPUT TYPE=TEXT NAME=AccountIn>
<P>
<INPUT TYPE=SUBMIT>
</FONT>
</BODY>
</HTML>
SalesVerify.asp 文件
<%@ Transaction = Required %>
<%
Set CurrentQOH = Server.CreateObject("Mycomp.Inventory")
Set CurrentSales = Server.CreateObject("Mycomp.Sales")
CheckQuantity = Request("QuantityToBuy")
CheckProduct = Request("ProductCode")
QuantityStatus = CurrentQOH.CheckQOH(CheckQuantity,CheckProduct)
If QuantityStatus = None
ObjectContext.SetAbort
Response.Write "Sorry, there is not sufficient quantity on hand to process your sale."
Else
ObjectContext.SetComplete
Account = Request("AccountIn")
Saleupdate = CurrentSales.PostIt(AccountIn)
End If
%>