0
我正在使用MEF進行依賴項注入,現在我正在編寫一個單元測試,在該測試中我必須注入一個模擬的依賴項,但我已聲明它作爲{ get; protected set; }
,這使我無法做到這一點。C# - 分配從MEF導入的Mocked依賴關係
的依賴性是使用[Import]
屬性,這意味着它不是通過構造或任何類似傳遞導入。
什麼是正確的做法,並以「右」我的意思是它不違反像固體與任何原則,來解決這個不方便?
代碼:
[Import] // MEF is able to inject it even tho it's set accessor is protected
IMyDependencie MyDependency { get; protected set; }
如果你想想看,我的問題可以通過在類的構造函數進口的依賴解決。你會說主要問題是我的班級設計是錯誤的嗎? –
我沒有使用MEF,但我個人更喜歡構造函數注入。 – stuartd