コード例 #1
0
        public void insertTaskIntoDatabase(int tno, int pno, string tname, string tdesc, DateTime tDeadline)
        {
            //Set isolation level
            TransactionOptions ops = new TransactionOptions();

            ops.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;

            //Wrapp transaction
            using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, ops))
            {
                try
                {
                    db.setTask(tno, pno, tname, tdesc, tDeadline);
                    Console.WriteLine("Just inserted a task into DB with TNO= " + tno + " F*****G NINJA!");
                    db.SubmitChanges();
                    //Commit transaction
                    trans.Complete();
                }
                catch (SqlException e)
                {
                    MessageBox.Show(e.Message.ToString());
                }
                catch (TransactionAbortedException tab)
                {
                    MessageBox.Show(tab.Message.ToString());
                }
                catch (TransactionInDoubtException tib)
                {
                    MessageBox.Show(tib.Message.ToString());
                }
            }
        }