【问题标题】:Using a Generic Event Handler to Access Conent Nodes in Umbraco在 Umbraco 中使用通用事件处理程序访问内容节点
【发布时间】:2011-08-26 05:03:05
【问题描述】:
伙计们,
我编写了一个 .Net 通用事件处理程序来使用 JSON 响应响应 JavaScript 请求。所有这些都会很棒(我认为),但我需要弄清楚如何访问我的内容树中的内容节点。具体来说,这些节点是事件日期,它们位于事件日历节点下方,即根目录下。
Root->EventCalendar->事件。
我遇到的问题是我的 ashx 文件位于我的 usercontrols 文件夹中。谁能给我一个关于如何“远程”利用节点结构的想法?我没有在模板上使用用户控件,然后在页面中使用该控件。那时,我在导航节点结构时没有问题,但是在这种情况下,控件没有嵌入到页面中,我不知所措。
我非常感谢任何帮助,我相信你知道我的问题,我是 Umbraco 的新手!
谢谢,
杰森
【问题讨论】:
标签:
user-controls
event-handling
umbraco
nodes
【解决方案1】:
您可以使用 umbraco.NodeFactory.Node 对象访问您的内容。这提供了对所有已发布内容的访问,并且是检索内容的最有效方式。
所以你可以这样做:
INode calendarNode = umbraco.NodeFactory.Node.GetNodeByXpath("root/EventCalendar");
List<INode> events = calendarNode.ChildrenAsList;
foreach(var eventNode in events)
{
DateTime createdDate = DateTime.Parse(eventNode.GetProperty("createDate").Value);
}