• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    Asp.net 在三層架構中事務的使用實例代碼

    來源:懂視網 責編:小采 時間:2020-11-27 22:42:17
    文檔

    Asp.net 在三層架構中事務的使用實例代碼

    Asp.net 在三層架構中事務的使用實例代碼:接觸3層也有一段時間了,了解水平一般,前段時間在想在三層中怎么使用事務呢,放在哪呢?Sqlherper DAL BLL。然后我就瘋狂的百度,好幾次都是未果(因為做的都是小項目,不用事務也關系不大),今天我再次查時,好好的看了csdn上的以討論,http://
    推薦度:
    導讀Asp.net 在三層架構中事務的使用實例代碼:接觸3層也有一段時間了,了解水平一般,前段時間在想在三層中怎么使用事務呢,放在哪呢?Sqlherper DAL BLL。然后我就瘋狂的百度,好幾次都是未果(因為做的都是小項目,不用事務也關系不大),今天我再次查時,好好的看了csdn上的以討論,http://

    接觸3層也有一段時間了,了解水平一般,前段時間在想在三層中怎么使用事務呢,放在哪呢?Sqlherper ? DAL? BLL?。然后我就瘋狂的百度,好幾次都是未果(因為做的都是小項目,不用事務也關系不大),今天我再次查時,好好的看了csdn上的以討論,http://topic.csdn.net/u/20091101/19/f21697d7-8f0c-4eb3-8e59-d0fe2f0b04b0.html,結合前輩和高手們的意見,自己改了一個出來。我的想法是將事務邏輯寫在業務邏輯層,數據庫的處理還都是在SQLHELPER,BLL層通過事務SqlTransaction傳值訪問DAL,再訪問Sqlhelper。接下來是分塊的代碼。

    Sqlhelper:
    代碼如下:


    private static SqlConnection Cnn = new SqlConnection(DbConfig.ConnectionString);
    #region 判讀SqlConnection 是否開啟連接 并開啟
    /// <summary>
    /// 判讀SqlConnection 是否開啟連接 并開啟
    /// </summary>
    /// <returns>返回SqlConnection</returns>
    private static SqlConnection GetCnn()
    {
    if (Cnn.State == ConnectionState.Closed)
    {
    Cnn.Open();
    }
    return Cnn;
    }
    #endregion
    #region 關閉數據庫連接
    /// <summary>
    /// 關閉數據庫連接
    /// </summary>
    public static void CloseCnn()
    {
    Cnn.Close();
    }
    #endregion
    #region 產生一個事務并開始
    /// <summary>
    /// 產生一個事務并開始
    /// </summary>
    /// <returns>返回此事務</returns>
    public static SqlTransaction BeginTransaction()
    {
    SqlTransaction tran = GetCnn().BeginTransaction();
    return tran;
    }
    #endregion

    DAL:
    代碼如下:

    public bool test(int i,SqlTransaction tran)
    {
    string sql = "insert into [test]([item]) values(@i)";
    SqlParameter[] paras=new SqlParameter[]{new SqlParameter("@i",i)};
    return sqlhelper.ExecutenQuery(sql, paras, CommandType.Text, tran)>0;
    }

    BLL:
    代碼如下:

    UserDAO userdao = new UserDAO();
    public bool test()
    {
    using (SqlTransaction tran = SQLHelper.BeginTransaction())
    {
    try
    {
    userdao.test(2, tran);
    userdao.test(3, tran);
    tran.Commit(); return true;
    }
    catch
    {
    tran.Rollback();
    return false;
    }
    finally
    {
    SQLHelper.CloseCnn();//關閉數據庫連接
    }
    }
    }

    上述代碼在此次測試中通過,若要用于真實項目中,請修改后再使用,還有本人水平一般,寫的不到之處請大家見諒。歡迎大家指導指正。

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    Asp.net 在三層架構中事務的使用實例代碼

    Asp.net 在三層架構中事務的使用實例代碼:接觸3層也有一段時間了,了解水平一般,前段時間在想在三層中怎么使用事務呢,放在哪呢?Sqlherper DAL BLL。然后我就瘋狂的百度,好幾次都是未果(因為做的都是小項目,不用事務也關系不大),今天我再次查時,好好的看了csdn上的以討論,http://
    推薦度:
    標簽: 代碼 例子 在使用
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 亚洲AV日韩精品久久久久| 久久精品中文騷妇女内射| 亚洲国产另类久久久精品黑人 | 成人国产精品高清在线观看| 精品无码久久久久久国产 | 国产vA免费精品高清在线观看| 国产成人精品一区二区三区免费| 亚洲中文久久精品无码ww16| 精品欧美一区二区三区久久久| 久久99精品国产99久久6男男| 精品无码av一区二区三区| 亚洲精品无码久久久久AV麻豆| 精品综合久久久久久88小说| 国产精品成人无码久久久久久| 久久r热这里有精品视频| 国产成人精品电影在线观看 | 91精品国产自产在线老师啪| 国产成人精品免费视| 国产精品无码a∨精品| 欧美精品v欧洲精品| 亚洲精品白浆高清久久久久久| 日韩精品欧美| 免费视频精品一区二区| 国产午夜精品一区二区| 国产精品永久免费| 国产精品午夜国产小视频| 91午夜精品亚洲一区二区三区| 午夜精品视频在线| 91精品久久久久久无码| 99久久99久久精品国产片果冻| 97视频在线精品国自产拍| 亚洲精品线在线观看| 51久久夜色精品国产| 国产A∨免费精品视频| 国産精品久久久久久久| 精品亚洲欧美无人区乱码| 久久精品国产亚洲精品| 欧美精品黑人粗大欧| 亚洲欧美日韩国产一区二区三区精品 | 久久99精品国产麻豆| 精品福利一区二区三区免费视频 |