我正在使用EPiServer。我正在创建一个插件来编辑当前页面的内容。我正在尝试从以下代码中获取数据:
var pageRouteHelper = EPiServer.ServiceLocation.ServiceLocator.Current.GetInstance<IPageRouteHelper>();
var currentPage = pageRouteHelper.Page;
,但是每次currentPage向我返回起始页面的内容时。这里缺少什么,我无法获得在屏幕上打开的页面的内容?
答案 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。