我对 C# 还很陌生,但遇到了一个我不太明白的错误?
我有一个想要循环一系列节点的视图,所以我尝试这样做:
@foreach (var crumb in Model.Breadcrumb)
{
//My code
}
正如在我的视图模型中我有这个:
public IEnumerable<LinkModel> Breadcrumb(IPublishedContent content) {
//Do logic.
return GetFrontpage(content, true).Reverse().Select(item => new LinkModel {
Target = "",
Text = item.Name,
Url = item.Url
});
}
private static IEnumerable<IPublishedContent> GetFrontpage(IPublishedContent content, bool includeFrontpage = false)
{
var path = new List<IPublishedContent>();
while (content.DocumentTypeAlias != "frontpage")
{
if (content == null)
{
throw new Exception("No frontpage found");
}
path.Add(content);
content = content.Parent;
}
if (includeFrontpage)
{
path.Add(content);
}
return path;
}
当您不添加括号时,编译器会将该方法视为方法组。如果您想调用该方法并迭代结果,请使用:
@foreach (var crumb in Model.Breadcrumb(/* your parameters */))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)