在這種情況下考慮:爲多個客戶定製c#WinForm應用程序
我有一個C#窗體窗體應用程序。這個應用程序對我所有的客戶都是一樣的。現在他們中的一個需要修改添加新文本框和新邏輯的表單。
我顯然不想重複我的應用程序,並插入IF語句與客戶ID來控制邏輯可以很容易地驅動到意大利麪風格的代碼。
我認爲在這種情況下,我可以爲每個客戶創建一個單獨的dll項目;在內部,我可以編寫自定義窗體,實現與默認窗體相同的界面(對於邏輯類也是相同的),我可以嘗試通過配置文件切換這些dll或使用正確的客戶dll構建項目(或者使用例如Windsor Castle for DI )。
這是一個有效的模式?存在一種不同的方式?
更新
我嘗試列表:
在[MEF vs IOC/DI]上查看此答案(http://stackoverflow.com/questions/108116/mef-managed-extensibility-framework-vs-ioc-di)。我認爲MEF或DI會爲你工作。就個人而言,我會使用Autofac,但我有偏見。 – bentayloruk 2011-06-11 20:25:38