日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

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

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
.NET技術登上主流技術平臺

.NET有很多值得學習的地方,這里我們主要介紹.NET技術,包括介紹COM/COM+技術等方面。

站在用戶的角度思考問題,與客戶深入溝通,找到天水網站設計與天水網站推廣的解決方案,憑借多年的經驗,讓設計與互聯(lián)網技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網站制作、網站設計、企業(yè)官網、英文網站、手機端網站、網站推廣、國際域名空間、網頁空間、企業(yè)郵箱。業(yè)務覆蓋天水地區(qū)。

.NET技術是微軟大力推廣的下一代平臺技術,自從.NET技術架構Beta2版本的正式發(fā)布,此項技術也逐漸走向成熟和穩(wěn)定。按照微軟的平臺系統(tǒng)占有率,我們不難想象得到,在未來的一兩年內.NET技術必定會勢如破竹一般的登上主流的技術平臺,而一個新的技術平臺得以快速發(fā)展的最重要的前提是:他不會徹底的摒棄以前的技術,這一點對于.NET技術來說指的就是COM/COM+技術了。

一般來說,在IT技術界以及硬件產業(yè),技術的更新?lián)Q代速度非常得驚人,而慣例是所有的新技術都會遵循向下兼容的原則,但是.NET技術不僅僅做到了這一點,.NET甚至實現了相互之間的各自調用,這一點是非常難能可貴的。也就是說,不但我們可以在.NET組件中調用COM組件,同時也可以在COM組件中正常的調用.NET組件。這點帶來的好處是顯而易見的,一方面我們可以保持現有的技術資源,另一方面,在現有資源中可以利用.NET所帶來的各種新技術。

一般的數據庫事務控制要求事務里所做的操作必須在同一個數據庫內,這樣在出現錯誤的時候才能回滾(RllBack)到初始狀態(tài)。這就存在一個問題,在分布式應用程序中,我們往往需要同時操作多個數據庫,使用數據庫本身的事務處理,很難滿足程序對事務控制的要求。在COM+中,提供了完整的事務服務,我們可以利用它來完成在分布式應用程序中的事務控制。

具體過程如下

一:用VS.NET生成一個類庫

二:添加對System.EnterpristServices的引用,具體步驟
菜單:(項目-添加引用-在.NET選項卡選擇System.EnterpristServices-確定)

三:構建類

 
 
 
  1. using System;  
  2. using System.EnterpriseServices;  
  3. using System.Data.SqlClient;  
  4. using System.Reflection;  
  5. namespace COMPlusSamples  
  6. {  
  7. //表明需要事務支持[ Transaction(TransactionOption.Required) ]  
  8. //聲明為服務器應用程序,還可以選擇Library,表示為庫應用程序  
  9. [assembly: ApplicationActivation(ActivationOption.Server)]  
  10. //描述信息  
  11. [assembly: Description("sample")]  
  12.  
  13. public class TxCfgClass : ServicedComponent  
  14. {  
  15. private static string init1 = "user id=sa;password=;
    initial catalog=pubs;data source=(local)"
    ;  
  16. private static string init2 = "user id=sa;password=;
    initial catalog=NorthWind;data source=(local)"
    ;  
  17. private static string add1 = "insert into authors
    ('au_lname','au_fname') values('test1', 'test2')"
    ;  
  18. private static string add2 = "insert into sample values('test1',22)";  
  19. //the error sql statement  
  20. //there is not table “sample”  
  21. public TxCfgClass() {}  
  22. private void ExecSQL(string init, string sql)  
  23. {  
  24. SqlConnection conn = new SqlConnection(init);  
  25. SqlCommand cmd = conn.CreateCommand();  
  26. cmd.CommandText = sql;  
  27. conn.Open();  
  28. cmd.ExecuteNonQuery();  
  29. conn.Close();  
  30. }  
  31. //添加一條記錄到數據庫  
  32. public void Add()  
  33. {  
  34. try  
  35. {  
  36. //在一數據庫中插入一條記錄  
  37. ExecSQL(init1, add1);  
  38. Console.WriteLine("the operation in the same database completely");  
  39. //在另外一個數據庫中插入兩條記錄  
  40. //這次執(zhí)行的是一個錯誤的SQL語句  
  41. ExecSQL(init2, add2);  
  42. Console.WriteLine("the operation in the other database  
  43. completely");  
  44.  
  45. Console.WriteLine("Record(s) added, press enter...");  
  46. Console.Read();  
  47. }  
  48. catch(Exception e)  
  49. {  
  50. //事務回滾  
  51. ContextUtil.SetAbort();  
  52. Console.WriteLine("Because there are some errors 
    in the operation ,so transcation abort");  
  53. Console.WriteLine("The error is " + e.Message);  
  54. Console.WriteLine("abort successfully");  
  55. Console.Read();  
  56. }  
  57. }  
  58. }  

【編輯推薦】

  1. .NET VS Java平臺之爭的理性思考
  2. .NET C# DES入門淺析
  3. .NET寫入文本文件的操作淺析
  4. .NET自定義控件應該如何實現?
  5. 淺析.NET 4.0和Visual Studio 2010多定向支持

網站欄目:.NET技術登上主流技術平臺
新聞來源:http://m.5511xx.com/article/dhdsoii.html