C#版三層登入例項:問題除錯
阿新 • • 發佈:2019-02-04
前言:
小編剛剛用C#敲完三層架構的登入例項,湊著熱乎勁趕緊總結一篇,將我所遇到的問題以及別的小夥伴遇到的問題彙總於此,希望可以幫助其他小夥伴儘量少走一些彎路。
問題:
1.ExecuteReader要求已開啟且可用的Connection。連線的當前狀態為已關閉。
原因:要先conn.open();然後才能執行讀取資料。。。接下來才是返回資料。。。
"conn.open()//呼叫開啟資料庫方法"
解決辦法:將“ conn.open() 新增到異常語句前”
2.物件名‘SCORE’無效,未處理SqlException。
原因:首先檢查一下你的程式碼是否有誤,這個問題可能是表名稱與程式碼中的名稱不一致所導致。
解決辦法:將‘SCORE’改為‘SCORES’.
3.未處理Exception,登入失敗。
原因:丟擲異常方式錯誤,該層不能將異常處理或丟擲。
解決辦法:用Try Catch 將異常丟擲到UI層,在UI層Catch將其顯示出來。
4.違反了PRIMARY KEY約束“PK_Scores。”不能再物件“dbo.Scores”中插入重複鍵。......
原因:在建立資料庫時,兩張表的鍵值衝突。
解決辦法:將SCORES表中的鍵值取消
總結部落格及原始碼地址:
小結:
三層架構的學習是此階段非常重要的,是進一步理解七層基礎,在學習前要理清思路,充分了解各層之間的依賴關係以及資料流向。
其次,閱讀前輩們的總結部落格也是一個重要的學習方式,要學會站在巨人的肩膀上。