日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
ASP.NET事務(wù)相關(guān)技巧介紹說明

希望我對ASP.NET事務(wù)一點經(jīng)驗?zāi)芙o大家?guī)韼椭?,導致WebDeployment出錯的原因也許還有很多,不過在你遇到錯誤時,可以先檢查一下你程序中的字符串,暫時把他們置為””,試試看。沒準就是他引起的問題啊。

創(chuàng)新互聯(lián)專注于昌寧網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供昌寧營銷型網(wǎng)站建設(shè),昌寧網(wǎng)站制作、昌寧網(wǎng)頁設(shè)計、昌寧網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)服務(wù),打造昌寧網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供昌寧網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

創(chuàng)建一個ADO.NET事務(wù)是很簡單的,僅僅是標準代碼的一個小的擴展。ASP.NET事務(wù)只要你知道如何使用ADO.NET來訪問數(shù)據(jù)庫,那就差不多知道了。區(qū)別僅僅是你需要把代碼放到一個事務(wù)上下文中。

還是原來的ADO.NET類庫引用,在實現(xiàn)事務(wù)的類裏面引入System.Data和System.Data.SqlClient類庫,為了執(zhí)行一個事 務(wù),你需要創(chuàng)建一個SqlTransation對象,可以調(diào)用你的SqlConnection對象BeginTransation()方法來創(chuàng)建它,一旦 你把SqlTransation對象存為本地變數(shù),ASP.NET事務(wù)你就可以把它賦給你的SqlCommand對象的事務(wù)屬性,或者把它作為構(gòu)

造器的一個參數(shù)來創(chuàng)建 SqlCommand。在執(zhí)行SqlCommand動作之前,你必須調(diào)用BeginTransaction()方法,ASP.NET事務(wù)然後賦給SqlCommand事務(wù)屬 性。一單事務(wù)開始了,你就可以執(zhí)行任何次數(shù)的SqlCommand動作,只要它是屬於同一個事務(wù)和連接。最後你可以調(diào)用SqlTransation的Commit()方法來提交事務(wù)。#t#

ADO.NET事務(wù)實際上是把事務(wù)上下文傳遞到數(shù)據(jù)庫層,如果事務(wù)中發(fā)生一個錯誤,ASP.NET事務(wù)庫會自動回滾。在你的錯誤處理代碼中,每次調(diào)用Rollback ()方法之前檢查事務(wù)對像是否存在是一種良好的習慣。這樣的一個例子是當一個死鎖發(fā)生的同時,數(shù)據(jù)庫正在執(zhí)行自動回滾。優(yōu)勢:

◆ 簡單性
◆ 和數(shù)據(jù)庫事務(wù)差不多的快
◆ 事務(wù)可以跨越多個數(shù)據(jù)庫訪問
◆ 獨立於數(shù)據(jù)庫,不同數(shù)據(jù)庫的專有代碼被隱藏了

限制:

事務(wù)執(zhí)行在數(shù)據(jù)庫ASP.NET事務(wù)上,所以你需要在事務(wù)過程中手動的維護一個連接

例子:

 
 
  1. public int purchaseitem(int customerId, int itemId, int itemQty)  
  2.  
  3. {  
  4.  
  5. SqlConnection con = null;  
  6.  
  7. SqlTransaction tx = null;  
  8.  
  9. int orderId = 0;  
  10.  
  11. try  
  12.  
  13. {  
  14.  
  15. con = new SqlConnection("Data Source=localhost; user   
  16.  
  17. Id=sa;password=;Initial Catalog=trans_db;");  
  18.  
  19. con.Open();  
  20.  
  21. tx = con.BeginTransaction(IsolationLevel.Serializable);  
  22.  
  23. String updatesqltext = "UPDATE inventory SET qtyinstockqtyinstock   
  24.  
  25. = qtyinstock - " + itemQty.ToString()   
  26.  
  27. + " WHERE inventory.productid = " + itemId.ToString();  
  28.  
  29. SqlCommand cmd = new SqlCommand(updatesqltext, con, tx);  
  30.  
  31. cmd.ExecuteNonQuery();  
  32.  
  33. // String is 2 SQL statements: the first is the insert,   
  34.  
  35. the second selects the identity column  
  36.  
  37. String insertsqltext = "INSERT INTO orders VALUES   
  38.  
  39. (" + customerId.ToString() + "," + itemId.ToString()  
  40.  
  41. + "," + itemQty.ToString() + " , getdate() ); SELECT @@IDENTITY";  
  42.  
  43. cmd.CommandText = insertsqltext;  
  44.  
  45. // Retrieve the order id from the identity column  
  46.  
  47. orderId = Convert.ToInt32(cmd.ExecuteScalar());  
  48.  
  49. cmd.Dispose();  
  50.  
  51. tx.Commit();  

ASP.NET事務(wù)可以說是在.Net平臺上事務(wù)實現(xiàn)方式中最簡單的一種,你僅僅需要加一行代碼。在ASPX的頁面聲明中加一個額外的屬性,即是事務(wù)屬 性,它可以有 如下的值:Disabled (缺省), NotSupported, Supported, Required 和 RequiresNew,這些設(shè)置和COM+以及企業(yè)級服務(wù)中的設(shè)置一樣,ASP.NET事務(wù)典型地如果你想在頁面上下文中運行事務(wù),那麼要設(shè)置為Required。如果頁 面中包含有用戶控件,那麼這些控件也會包含到事務(wù)中,事務(wù)會存在於頁面的每個地方。


本文名稱:ASP.NET事務(wù)相關(guān)技巧介紹說明
文章網(wǎng)址:http://www.dlmjj.cn/article/dpdiccp.html