考虑一下场景,页面在页面上执行某些操作时必须动态呈现内容。
基本上,页面将包含渲染列表,在每次渲染中,我们将能够使用以下语句获取当前项目。
var item = Sitecore.Mvc.Presentation.RenderingContext.Current.Rendering.Item;
现在如果我必须在按钮点击时显示内容,我们将对我们的mvc控制器/动作执行ajax调用,在我们的Action中,我们可以通过以下语句呈现项目。
Item item = SitecoreHelper.GetSCDb().GetItem("{item id}");
或
Item item = SitecoreHelper.GetSCDb().GetItem("item path");
但在这两种情况下,我们都必须对id / path进行硬编码。
所以任何人都可以告诉我,有没有更好的方法来做到这一点。
感谢您的帮助。
干杯:)
答案 0 :(得分:0)
我在Sitecore + MVC项目上所做的一件事就是内容项目将由页面编辑器和JavaScript中的AJAX调用访问,正在该项目模板中创建一个新设备_StandardValues,在那里我将查询设置为?Ajax = true。然后我只将HTML片段(没有样式和JS)作为布局。虽然桌面视图具有它看起来像""它已被AJAX调用。这不需要任何.net编码,它都是通过sitecore完成的。