小编Net*_*oke的帖子

具有默认参数的Autofac类 - >覆盖att运行时

我希望能够解析一个具有发送到构造函数的默认参数的类,但我希望能够在指定参数时覆盖它.

这是我如何注册:

builder.RegisterType<SearchService<WebPage>>().As<ISearchService<WebPage>>().WithParameter(
            new NamedParameter("solrUrl", ConfigurationManager.AppSettings["UrlWeb"])).SingleInstance();
        builder.RegisterType<SearchService<Document>>().As<ISearchService<Document>>().WithParameter(
            new NamedParameter("Url", ConfigurationManager.AppSettings["solrUrlDocs"])).SingleInstance();
Run Code Online (Sandbox Code Playgroud)

要解决我希望能够这样:

_containerProvider.RequestLifetime.Resolve<ISearchService<WebPage>();
Run Code Online (Sandbox Code Playgroud)

这工作很好,但我也希望能够做到这一点:

_containerProvider.RequestLifetime.Resolve<ISearchService<WebPage>(new NamedParameter("Url", "some other url"));
Run Code Online (Sandbox Code Playgroud)

哪个不起作用..所以我的问题是,是否可以注册一个默认参数,我希望能够在运行时覆盖?

autofac

0
推荐指数
1
解决办法
1792
查看次数

标签 统计

autofac ×1