假設我們有一個用於編輯小部件的窗體。給定的Widget有一個屬性。該屬性(A)的值可以是存儲的屬性列表(1,2,3)中的一個。我們的屬性列表在多個Widget類型中使用。存儲UI信息的位置
現在,從數據的角度來看,給定的Widget可以具有任何列表的屬性A(可以包含值1,2或3)。但是,我們的業務規則規定,Widget類型X不能包含屬性A中的值1.
我的問題是,我在哪裏存儲表單將用於填充屬性A列表的信息?
現在,碰巧我使用的是一個不同的窗體小部件X,Y和Z,但理論上,我們可能必須在同一個窗體上解決這個問題。我可以將它存儲在Widget類或Attribute類中,但是我覺得這並不代表實際的對象信息(「壽司」不是有效的Dog類食物,即使它是完全有效的食物,它沒有形容狗)。你如何填寫Edit Dog表單上的食物列表?我需要批准的列表信息是可編輯的,而不需要重新部署代碼,因爲用戶反覆無常,最終有人會想要喂他們的狗壽司。
在C#中編寫這個,但我覺得這個問題是非常不相關的語言。
新增用戶從藍莓響應後:
謝謝,也許我的描述是不明確的。設想一個Widgets表,一個Attributes表和一個Widget_Attributes表,它們將是一個x-ref,其中包含的屬性允許被分配給一個Widget的給定屬性。這是它可以完成的一種方式,但看起來像是一種代碼味道,因爲它可能會導致Widget上每個屬性的x-ref表。所以我正在尋找一種方法來填充只有該類型的小部件允許的屬性值的控件。
現在領先的想法是將標誌枚舉添加到每個屬性記錄中,以指示屬性對哪些小部件有效。在Dog-Food示例中,Food壽司將具有值爲1的EatenBy枚舉屬性,其中枚舉將被定義爲Human = 1,Dog = 2,Cat = 4。
不是我正在尋找的東西,而是成爲唯一一個要加強的人的要點。謝謝! – RobertMGlynn