首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在HttpHandler中获取UmbracoHelper?

如何在HttpHandler中获取UmbracoHelper?
EN

Stack Overflow用户
提问于 2019-08-21 15:50:17
回答 1查看 378关注 0票数 0

在Umbraco7中,您可以使用UmbracoContext.EnsureContext()和一些技巧来获得Umbraco上下文之外的UmbracoHelper,例如在HttpHandler中。在Umbraco 8中,UmbracoContext.EnsureContext()已经被移除了,那么我们现在该怎么做呢?

具体地说,我希望在我的HttpHandler中获得根节点,如下所示

代码语言:javascript
复制
var helper = CreateUmbracoHelper();
var root = helper.ContentAtRoot().First();

但是我不知道如何实现CreateUmbracoHelper()

EN

回答 1

Stack Overflow用户

发布于 2019-08-21 16:16:41

事实证明,使用DependencyResolver非常简单。这是我得到的,它工作得很好。

代码语言:javascript
复制
var factory = DependencyResolver.Current.GetService<IUmbracoContextFactory>();
using (factory.EnsureUmbracoContext())
{
    var helper = DependencyResolver.Current.GetService<UmbracoHelper>();
    var websiteNode = helper.ContentAtRoot().Single() as HomePage;
    // etc
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57586856

复制
相关文章

相似问题

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