如何获得当前页的SITECORE上下文

当你开始任何项目,你需要首先要做的是了解当前页面的信息向网站用户显示相关页面数据。在今天的教程中,我将介绍一些基本的API调用的实现。

Sitecore的实例

获得有关当前项目的信息,您可以使用Sitecore的上下文。像正常的HttpContext一样,Sitecore上下文顾名思义就是让你了解当前的请求。

 Sitecore.Context.Item 

sitecore.context.item有许多有用的属性。例如,你想知道当前页处于Sitecore的预览或查看状态时,您可以使用此代码:

sitecore.context.pagemode.ispreview

Sitecore.Context.PageMode.IsNormal

API从Sitecore获得当前页面的URL

使用Sitecore上下文结合LinkManager获取当前页面的URL:

   var currentUrl = Sitecore.Links.LinkManager.GetItemUrl(Sitecore.Context.Item);

 

Sitecore MVC的助手

在我们的Razor 视图,我们可能想得到的Sitecore信息。就我个人而言,我会强烈反对这样做,因为它打破了MVC的特点。虽然通过使用这些辅助类你可以在视图添加你想要的业务逻辑但有一个更好的方法就是把你所有这些内容写在的Sitecore的逻辑视图模型并通过他们联系视图来展现。供参考:

@Html.Sitecore().CurrentItem
@model.item
@Model.Rendering.Item
renderingcontext.current.rendering.item

页面上下文

在绘制当前的请求,你可能想看看页面上下文,在渲染的背景下,网页将呈现;你可以使用PageContext来获取信息

var page = PageContext.Current.Item;
原文地址:https://www.cnblogs.com/BlogNetSpace/p/8868743.html