Fw: [問題] MVC entity 連線設定

作者: YaMeiLo (亞妹露~!!)   2016-02-13 08:43:55
※ [本文轉錄自 Web_Design 看板 #1Mldm8J- ]
作者: YaMeiLo (亞妹露~!!) 看板: Web_Design
標題: [問題] MVC entity 連線設定
時間: Sat Feb 13 08:42:39 2016
各位大大新年快樂!
使用 ASP.NET MVC5
小弟有 頁面 A 可以列出多台資料庫連線目標 (執行個體)
這些資料庫執行個體內有部分是完全相同的結構,已經建立ADO.NET實體資料模型
選擇 頁面 A 的連線目標Item 由 ActionLink 導去目標 Controller (簡稱頁面B)
裡面的 entity 於 Action 內變更 Connectionstring 可以連到各個資料庫
以上目前都可正常運作
導過去的頁面,以及後續子頁面,就會固定使用這個連線目標
現在的問題是 如果未來擴充與 頁面B 同等級類型的 Controller
都只能在每一個 Action 內變更 Connectionstring
變成很多地方都會寫一樣的 code
想問有沒有比較好的方法
作者: ChaosFractal   2016-02-13 09:56:00
[不專業回答]類別繼承能解決嗎?
作者: YaMeiLo (亞妹露~!!)   2016-02-13 11:22:00
目前試不出來,還是需要call function
作者: Litfal (Litfal)   2016-02-13 20:40:00
A頁面選擇後用Session記起來。另外建一個簡單工廠,依紀錄的Session建立DbContext,所有Controller透過這個工廠建立然後可以考慮建個ActionFilter去檢查該Session是否有效,若無效則Redirect到A讓使用者選擇,B等功能頁使用此Filter
作者: GoalBased (Artificail Intelligence)   2016-02-14 00:21:00
請問樓上,簡單工廠是建立dbcontext還是controller?
作者: qwer820404 (GB2)   2016-02-14 00:37:00
DI
作者: Litfal (Litfal)   2016-02-14 00:53:00
dbcontext,ASP.NET MVC裡面controller幾乎不會自己建
作者: YaMeiLo (亞妹露~!!)   2016-02-14 10:03:00
感謝 L 大大,將朝這方向嘗試,謝謝您!!
作者: GoalBased (Artificail Intelligence)   2016-02-14 18:35:00
哦,是model first,懂了

Links booklink

Contact Us: admin [ a t ] ucptt.com