閱讀361 返回首頁    go 阿裏雲 go 技術社區[雲棲]


使用 CommittableTransaction 執行顯式事務

準備工作

  • 添加 System.Transactions 引用(在解決方案的網站上右鍵);
  • 引用 System.Transactions 名稱空間。

示例講解

            using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Connection String"].ConnectionString))
            {
                using (var ct = new CommittableTransaction())
                {
                    conn.Open();
                    conn.EnlistTransaction(ct);//關聯事務
                    using (var cmd = new SqlCommand())
                    {
                        cmd.Connection = conn;
                        cmd.CommandType = CommandType.Text;
                        try
                        {
                            cmd.CommandText = "insert into TranTable(Priority) values(1)";
                            cmd.ExecuteNonQuery();
                            cmd.CommandText = "insert into TranTable(Priority) values(256)";
                            cmd.ExecuteNonQuery();
                            ct.Commit();
                            Response.Write("Ok");
                        }
                        catch (SqlException ex)
                        {
                            ct.Rollback();
                            Response.Write("Error:" + ex.Message);
                        }
                    }
                }
                conn.Close();
            }

參考https://msdn.microsoft.com/zh-cn/library/ms172146(v=vs.90).aspx


最後更新:2017-04-03 20:19:55

  上一篇:go iOS網絡編程-配置iCloud-圖文解說
  下一篇:go 不知道怎麼說愛,那就喜歡你吧