0

Swinject コンテナに登録されていないオブジェクトの新しいインスタンスを解決/作成することは可能ですか? Unity では、c# の依存性注入 (Microsoft から) がそれです。

一部のプロトコルに依存するviewModelクラスを解決したい。例: IFileManager をコンテナーに登録しました。

container.register(IFileManager.self) { _ in FileManager() }.inObjectScope(ObjectScope.container)

そして私viewModelはIFileManagerに依存しています

class AwesomeViewModel{
init (fileManager: IFileManager) {
    ....
}}

Swinject リゾルバーを使用して AwesomeViewModel の新しいインスタンスを作成したいのですが、すべての依存関係を init に追加したいのですが、うまくいきません。

viewModel = AppDelegate.container.resolve(AwesomeViewModel.self)

そしてViewModelはnilです

4

1 に答える 1