linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘建议留言网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > ASP >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·由HTTP 500 Internal server e
·会员系统“找回密码”的制作方
·ASP实现数字和字母组合并生成图
·简单的asp验证码程序示例
·如何让图片自动缩放以适合界面
·asp中如何调试 ASP 脚本
·如何用foreach遍历页面上所有的
·如何实现站点的RSS输出
·用ASP制作强大的搜索引擎
·采用XMLHTTP编写一个天气预报的
·ASP如何获取真实IP地址
·典型Datagrid分页、排序、删除
·无组件实现文件上传/下载
·一个分页代码例子
·asp+ajax打造无刷新新闻评论系
最新文章
·ASP教程:8、ASP内建对象Respo
·ASP教程:7、ASP内建对象Reque
·ASP教程:6、ASP脚本循环语句
·ASP教程:5、ASP脚本变量、函数
·ASP教程:4、ASP脚本基础
·ASP教程:3、ASP基础
·ASP教程:2、ASP简介
·ASP教程:1、Are you ready?
·ASP中使用SQL语句教程
·ASP进度条
·由HTTP 500 Internal server e
·Asp无组件生成缩略图
·ASP 系列函数大全(4)
·ASP 系列函数大全(3)
·ASP 系列函数大全(2)
Google
 
asp内置对象 ObjectContext详解
[ 作者:  加入时间:2007-12-03 15:39:31  来自:Linux联盟收集整理 ]
您可以使用 ObjectContext 对象提交或放弃一项由 Microsoft Transaction Server (MTS) 管理的事务,它由 ASP 页包含的脚本初始化。
  
  ASP 包含 @TRANSACTION 指令时,该页会在事务中运行,直到事务成功或失败后才会终止。
  
  语法
  ObjectContext.method
  
  方法
  SetComplete SetComplete 方法声明脚本不了解事务未完成的原因。如果事务中的所有组件都调用 SetComplete,事务将完成。
  SetAbort SetAbort 方法声明被脚本初始化的事务未完成,无法更新源。
  
  事件
  OnTransactionCommit
  OnTransactionAbort
  
  注释
  ObjectContext 实现 MTS ObjectContext 对象的两种方法。 SetAbort 方法完全终止事务。这样,MTS 不更新在第一阶段联系的源。事务终止时,将处理脚本的 OnTransactionAbort 事件。
  
  调用 SetComplete 方法并不一定意味着事务已完成。只有脚本调用的所有事务组件都调用了 SetComplete,事务才能完成。在大多数实例中,如果结束处理时未调用 SetAbort,脚本通常被假定为完成的,所以不一定要在脚本内调用 SetComplete。
  
  ObjectContext 展示了 SetAbort 和 SetComplete 以外的六种方法。这些方法可用于脚本调用的组件,但不能直接用于 ASP 脚本。
  
  示例
  这里示范使用 SetAbort 和 SetCommit 的方法。Sales.htm 文件获取处理销售请求所需的数据。第二个文件——SalesVerify.asp 中的脚本使用两个对象——Inventory 和 Sales 处理销售。如果 Inventory 返回了错误代码表示供销售的存货不足,就会调用 SetAbort。如果 Inventory 对象没有返回错误代码,将会调用 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
  %> 
  
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·asp内置对象Application详解  (2007-12-03 15:38:01)
 ·ASP内置对象 Request对象详解  (2007-12-03 15:32:26)