EPiServer-如何获取当前页面数据?

时间:2018-08-21 09:46:45

标签: c# episerver

我正在使用EPiServer。我正在创建一个插件来编辑当前页面的内容。我正在尝试从以下代码中获取数据:

 var pageRouteHelper = EPiServer.ServiceLocation.ServiceLocator.Current.GetInstance<IPageRouteHelper>();

 var currentPage = pageRouteHelper.Page;

,但是每次currentPage向我返回起始页面的内容时。这里缺少什么,我无法获得在屏幕上打开的页面的内容?

1 个答案:

答案 0 :(得分:0)

如果我们具有页面ID(例如139),并使用以下代码,我们可以检索页面的内容。

var pageId = 139;

var pageRef = new PageReference(pageId);

var contentRepository = ServiceLocator.Current.GetInstance<IContentLoader>();

var page = contentRepository.Get<PageData>(pageRef);

从浏览器获取页面ID的简单但不是最实用的方法是

var pageUrl = HttpContext.Current.Request.RawUrl;

我们可以从pageUrl中检索pageId。