首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用SimpleInjector解析ISitecoreService

使用SimpleInjector解析ISitecoreService
EN

Stack Overflow用户
提问于 2017-04-07 21:34:07
回答 2查看 207关注 0票数 0

ISitecoreService接受数据库名称作为其构造函数(web或master)中的字符串参数

ISitecoreService service = new SitecoreService("master"); //or
ISitecoreService service = new SitecoreService("web");

是否可以将数据库名称作为参数动态发送到IoC并进行解析?例如,我发送web/master字符串参数并获得ISitecoreService的新实例

EN

回答 2

Stack Overflow用户

发布于 2017-04-07 22:02:21

是像这样吗?

container.Register<ISitecoreService>(() => new SitecoreService("master"));
票数 1
EN

Stack Overflow用户

发布于 2018-05-31 18:04:31

由于我有使用Sitecore的经验,而且我喜欢Simpleinjector,所以对Stevens进行了扩展。

如果您愿意,可以使用配置工厂在应用程序引导时获取Sitecore配置,访问网站配置并使用数据库属性。

var sites = Sitecore.Configuration.Factory.GetSiteInfoList();
var website = sites.Single(s => s.Name == "website");

ISitecoreService service = new SitecoreService(website.Database);
container.Register<ISitecoreService>(() => service);

这样,您的SitecoreService将使用网站配置中定义的相同数据库进行更新。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43279529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档