Razor Generatorを使用してテンプレートを作成しました。ネストされたアイテムのリストを作成するには、再帰関数が必要です。この解決策を試しましたが、すべてのコードがエラーとしてマークされました。
@* Generator: Template *@
@functions
{
public IList<Models.Category> Topics
{
get;
set;
}
}
@helper ShowTree(IList<Models.Category> topics)
{
<ul>
@foreach (var topic in topics)
{
<li>
@topic.Title
@if (topic.Childs.Count > 0)
{
@{
ShowTree(topic.Childs);
}
}
</li>
}
</ul>
}
ヘルパーを追加した後に得た無関係なエラーのいくつか:
-Error 3 Invalid expression term ';'
Error 4 Feature 'lambda expression' cannot be used because it is not part of the ISO-2 C# language specification
Error 13 Feature 'implicitly typed local variable' cannot be used because it is not part of the System C# language specification
Error 6 The name 'WriteLiteralTo' does not exist in the current context
しかし、ヘルパー メソッドを削除すると、これらはすべて消えてしまいます。
Razor テンプレートでヘルパーを作成することはできませんか?