【发布时间】:2012-08-21 13:55:11
【问题描述】:
我遇到了这个问题before 并且从未让它工作,但这次我没有其他方法可以解决它并且真的需要让它工作。
我有一个简单的 ascx 控件,它可以读取 RSS 提要并以简单的 html 格式输出。后面的代码很简单。
然后我有一个 razor 脚本来呈现整个页面,并且在该页面的某个区域内我想添加我的 ascx 控件。
如果我像这样直接在模板上添加控件:
<umbraco:macro Alias="SubnavRenderer" language="cshtml" runat="server"></umbraco:macro>
效果很好,但博客条目出现在内容之外。
所以我从 razor 脚本内部做这样的事情:
foreach (var item in Model.Children)
{
...
else if(item.NodeTypeAlias == "Blog")
{
@Html.Raw(umbraco.library.RenderMacroContent("<?UMBRACO_MACRO macroAlias=\"BlogRenderer\"></?UMBRACO_MACRO>", Model.Id));
}
}
这会呈现一个空 div,但内容无法在其中呈现,因此宏无法正常工作。 我怀疑它与页面的生命周期有关。该宏有一个可能被跳过的 page_load 事件或类似事件。
有什么想法吗? 非常感谢
【问题讨论】:
标签: .net razor macros umbraco ascx