請參閱圖片。構建可以根據運行環境工作的可重用控件的模式?
三大黑色的矩形是我3種不同的形式。它們屬於我的應用程序中的3個不同的上下文。 紅色的彩色方塊放在所有3種形式上。 但是,紅框的可見性(&允許值,驗證規則等)取決於其他控件的可見性和/或用戶輸入的表單上的值。例如。在第一種形式中,能見度將根據綠色控制的可見性而改變。在另一種形式中,紅色框中的允許值將取決於在藍色列表控件中選擇的值等等。
我應該如何處理紅色控制的值/狀態/驗證?
一種選擇是在每種形式中嵌入一個邏輯。但是這會導致各處的代碼重複。
是狀態模式的一個選項嗎?如果是,那麼紅色控制的服務器端邏輯將不得不處理所有上下文?那麼這段邏輯怎麼知道綠色或藍色控制中的值何時改變?
我想要一個可重複使用的紅色文本框,它在所使用的每個環境中都會以所需的方式運行。
我應該在這種情況下使用哪種模式?如果我在表單上爲每個控件(格林,藍色等)的變化調用服務器端邏輯來計算紅框的可見性/值,那麼考慮性能是否是一個很好的選擇?
我有一個ASP.NET應用程序。
請提一下您之所以會下調問題的原因。 – Learner