在Umbraco7中,您可以使用UmbracoContext.EnsureContext()和一些技巧来获得Umbraco上下文之外的UmbracoHelper,例如在HttpHandler中。在Umbraco 8中,UmbracoContext.EnsureContext()已经被移除了,那么我们现在该怎么做呢?
具体地说,我希望在我的HttpHandler中获得根节点,如下所示
var helper = CreateUmbracoHelper();
var root = helper.ContentAtRoot().First();但是我不知道如何实现CreateUmbracoHelper()。
发布于 2019-08-21 16:16:41
事实证明,使用DependencyResolver非常简单。这是我得到的,它工作得很好。
var factory = DependencyResolver.Current.GetService<IUmbracoContextFactory>();
using (factory.EnsureUmbracoContext())
{
var helper = DependencyResolver.Current.GetService<UmbracoHelper>();
var websiteNode = helper.ContentAtRoot().Single() as HomePage;
// etc
}https://stackoverflow.com/questions/57586856
复制相似问题