私は以前にこの問題を抱えていて、それを機能させることができませんでしたが、今回はそれを回避する別の方法がなく、本当にこれを機能させる必要があります.
RSS フィードを読み取り、単純な html で出力する単純な ascx コントロールがあります。背後にあるコードは非常に単純です。
次に、ページ全体をレンダリングするかみそりスクリプトがあり、そのページの特定の領域内に ascx コントロールを追加したいと考えています。
次のようにテンプレートに直接コントロールを追加すると:
<umbraco:macro Alias="SubnavRenderer" language="cshtml" runat="server"></umbraco:macro>
うまく機能しますが、ブログのエントリがコンテンツの外に表示されます。
したがって、かみそりスクリプトの内部から、次のようなことを行います。
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 イベントがあります。
何か案は?どうもありがとう