1
我已閱讀文檔,找不到任何有關解析類型的信息,同時覆蓋其某些依賴關係。舉例說明最簡單解決依賴時覆蓋某些實現
public class A
{
public A(IServiceA a, IServiceB b) {}
}
// Resolve scenarion
type =>
{
// type is A
var a = Container.Resolve<IServiceA>();
a.SomeProperty = "magic";
return Container.Resolve(type) // TODO: How to resolve A using a
}
它有道理嗎?一直在尋找類似
return Container.Resolve(type, Rule.Override.TypeOf<IServiceA>(a));
與DryIoc
編輯(2016年5月26日) 我的問題是missleading偉大的工作。下面是
ViewModelLocationProvider.SetDefaultViewModelFactory((view, type) =>
{
var page = view as Page;
if (page != null)
{
var navigationService = Container.Resolve<INavigationService>();
((IPageAware)navigationService).Page = page;
var @override = Container.Resolve<Func<INavigationService, type>>(); // How to do this
return @override(navigationService);
}
return Container.Resolve(type);
});
看起來不錯。我看到我說我的問題有點missleading因爲參數'type'是'類型',並不知道在編譯時...任何想法? – joacar
檢查更新。 – dadhi
對不起,沒有你的編輯,但更新也應該爲它工作。 – dadhi