下面的陳述和以下問題基於我自己的經驗,如果有些不正確,可以自由指出。事實上,我真的很感激它。IoC容器不應該處理業務邏輯單例的序列化嗎?
在幾乎所有的應用程序體系結構中,開發人員都使用IoC容器解析的類實例,即InSingletonScope()
(Ninject提供的術語,但我相信大多數人會理解)。
例如,您只需要其中一個類實例的示例可以是ICloudStorageProvider的實現。
如果ICloudStorageProvider實施實例包括嵌套LoginData類,或只是普通登錄和密碼字段的形式登錄數據到雲賬戶,到目前爲止,我一直在呼籲像LocalStorageProvider.SaveLoginData(...)
的方法,每當我需要堅持下去。一個知道如何做的不同類保存了我的類實例的數據。
如果有一種機制允許序列化一個本地數據存儲器中的這些「單例」對象的整個實例,然後當應用程序重新啓動或需要一個isntance時,它會使生活變得更容易再次,它只是在上面的例子中將它和上面的數據一起反序列化。
而且,由於IoC容器是現今對象實例化的負責人,因此似乎是完美匹配這樣的責任。
是否有這樣一種機制,充當IoC和串行器?