簡體   English   中英

在具有廣泛MVC架構(C#)的非Web應用程序中控制程序流

[英]Controlling program flow in a non-web app with broad MVC architecture (c#)

我有一個控制台應用程序,其中心過程是從數據庫表中獲取下一行,並基於字段值運行全部返回相同類型o對象的幾段代碼之一。 我可能有一個開關或if語句類型安排,其作用類似於(偽代碼):

if exhibitType == "Summary" then AddSummaryExhibit
elseif exhibitType == "Timeline" then AddTimelineExhibit

...等。幾乎就像MVC網站中的路由設置一樣。 該程序確實遵循近似的MVC類型結構,每種方法都從模型中獲取數據,基於.cshtml剃刀視圖呈現HTML,並將其附加到屬於HTML文檔容器的“節”的集合中。

理想情況下,最好將一個名為x的新方法添加到我的項目中,然后允許x作為新值添加到db表中,而無需手動維護此條件集。 我在想也許代表或某些事情可能在這里適用,但這只是一個想法。 有關最佳做法的任何提示將不勝感激。

謝謝

我相信您正在尋找的關於長切換語句的線程已經在這里回答了: 如何避免長切換..需要幫助重構

實際上,您正在尋找具有四個模式的幫派。 我想到的模式是策略模式,狀態模式和責任鏈模式。

考慮這些模式如何滿足您的需求可能會非常具有挑戰性,但是通過確定對模塊化的需求並且您沒有從switch語句中獲取模塊化,這是朝着良好方向邁出的重要一步。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM