台灣最大程式設計社群網站
線上人數
803
 
會員總數:244675
討論主題:188773
歡迎您免費加入會員
討論區列表 >> ASP.NET >> 萬用的寫法~關於asp.net 內建函數問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
萬用的寫法~關於asp.net 內建函數問題
價值 : 5 QP  點閱數:237 回應數:4

樓主

想睡覺
初級專家
1383 283
5110 1310
發送站內信

最近 整理了一下我的惡臭味的程式,因為這幾天看了自己以前寫的程式有點不爽,重覆性的程式非常多,尤其是 資料庫的CRUD 這幾乎每個程式都用的到阿~
於是 寫了 資料庫 四項功能 的類別,往後只要using 該類別 四種功能 帶些參數就能跑了,不止程式畫面精簡 ,也減低程式錯誤率的發生 也能保持一致性的設計
分享一下我寫的查詢類別程式
目前這段寫法應該是全部查詢應該都適用

但是有一個問題, 我的資料庫類別裡面 有查詢 新增 修改 刪除, 我想問一下
關於asp.net 內建的寫法 我要怎麼使用一個[ "foreach" ] 完成這四項的功能呢?
新增 是 InsertParameters.Add
查詢 是 Parameters.AddWithValue
修改 是 UpdateParameters.Add
刪除 是 DeleteParameters.Add

我發現 這個好像無法使用switch case 來做,想請教一下 如果使用foreach的話 我要怎麼做才有辦法 四個功能依造個別需求都跑的到呢?

搜尋相關Tags的文章: [ 內建 ] ,
本篇文章發表於2019-03-22 17:06
== 簽名檔 ==
在學習的過程中沒有結束的一天.
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
作者回應

想睡覺
檢舉此回應
剛剛發現到 我給的點數 原本50點 怎麼會變成5點而已 0好像有按沒出去 先說聲報歉= =
本篇文章回覆於2019-03-22 17:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
不錯的參考

小羊窒息
捐贈 VP 給 缺氧的羊:窒息 檢舉此回應
聽起來, 似乎是,

各種資料庫欄位參數[打算只傳入1次], 然後配上不同的[指令文字('新增', '修改')],
讓元件自動完成update, insert,之類的....

這樣的話整個程式碼就可以很精簡...??
是這樣嗎??
====================================

我使用的方式是...不管是新增, 修改, 刪除, 還是查詢...
都只用 Parameters.AddWithValue







公版的寫法...(只考慮單一table)
基本上就只是在CommandText 下功夫....




(以上的code是從手邊的程式碼挖出來, copy到記事本手動修改後虛擬碼版本,
如果不能直接使用, 純屬正常)
本篇文章回覆於2019-03-23 00:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
最有價值解答

topcat
捐贈 VP 給 topcat 檢舉此回應
看起來您想撰寫『資料存取層』的公用元件
建議您可以研究一下『Dapper』這個東西

https://dotblogs.com.tw/topcat/2016/10/06/165217

可以傳入語法與資料物件
可以精簡很多寫法

另外,不知道您之前撰寫的時候,是否有考慮『Transaction』的問題
例如:商業邏輯上
產生訂單的過程
會同時維護以下的資料表
訂單Head檔,訂單Detail檔,在庫檔(扣除在庫)
以上這三個檔案,應該要包在一個交易裡面『Transaction』
維護這三個檔案的過程中,有任何的問題,都要Rollback回去
確保交易過程中的『全有或全無』

所以,『TransactionScope』也建議您要研究一下

^.^a
本篇文章回覆於2019-03-23 18:08
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

想睡覺
檢舉此回應
小喵大大 感謝您的分享,剛剛看了一下讓我得知Dapper的確是好物 您提供的寫法 比較符合我所想要的

另外也謝謝小羊的分享,讓我知道 還有這樣的寫法,感謝您們
本篇文章回覆於2019-03-25 08:56
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.