[英]Umbraco.Web.Models.DynamicPublishedContentList does not contain a definition for Count
[英]Umbraco razor macro DynamicPublishedContentList does not contain a definition for
我的umbraco视图为正常工作的宏生成了以下代码:
@* Helper method to travers through all descendants *@
@helper Traverse(dynamic node)
{
@* Update the level to reflect how deep you want the sitemap to go *@
var maxLevelForSitemap = 5;
@* Select visible children *@
var selection = node.Children.Where("Visible").Where("Level <= " + maxLevelForSitemap);
@* If any items are returned, render a list *@
if (selection.Any())
{
<ul>
@foreach (var page in selection)
{
<li class="level-@page.Level @(page.IsAncestorOrSelf(CurrentPage) ? "on" : null)">
@if (page.isNotNavigable == true)
{
<span>
<cite class="arrow"></cite>@page.Name
</span>
}
//if next line fails, add before the if below: page.HasProperty("pageRedirectTarget")
else if (page.HasValue("pageRedirectTarget"))
{
var redirectPage = Umbraco.Content(page.pageRedirectTarget);
<a href="@redirectPage.Url.Substring(0, redirectPage.Url.Length - 1)@page.pageRedirectComplement">
<cite class="arrow"></cite>@page.Name
</a>
}
else
{
<a href="@page.Url">
<cite class="arrow"></cite>@page.Name
</a>
}
@* Run the traverse helper again for any child pages *@
@Traverse(page)
</li>
}
</ul>
}
}
当我添加另一个dll(在3.5框架中编译)并且selection.Any()停止工作时,就会出现问题,而是出现一条错误消息:“不包含Any()的定义”。
我知道动态不支持扩展方法,但是为什么在没有添加引用的情况下它会起作用并给出错误?
谁能帮我?
谢谢。
并非完全是一个答案,但是对评论的时间太长了,希望对您的故障排除有所帮助。
在bin目录中检查以下.dll,如果您的项目不需要它们,请将其删除。 一次删除一个,然后在每个之后重新测试,看看是否可以固定下来。
EntityFramework.SqlServer.dll
WebGrease.dll(删除并更新为最新)
DotNetOAuth.dll
该信息来自Umbraco论坛,尤其是下面链接的两个帖子。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.