maartenba / MvcSiteMapProvider

An ASP.NET MVC SiteMapProvider implementation for the ASP.NET MVC framework.
Microsoft Public License
538 stars 218 forks source link

'MvcSiteMapProvider.Web.Html.Models.SiteMapNodeModelList' does not contain a definition for 'Any' #479

Open FranciscoG opened 6 years ago

FranciscoG commented 6 years ago

I keep getting this error and I can't figure out how to fix it.

I'm on version 4.6.22 MacOS Sierra - Visual Studio Community 7.5.2 Mono version 5.10.1.57

System.Web.Compilation.CompilationException CS1061: Type 'MvcSiteMapProvider.Web.Html.Models.SiteMapNodeModelList' does not contain a definition for 'Any' and no extension method 'Any' of type 'MvcSiteMapProvider.Web.Html.Models.SiteMapNodeModelList' could be found. Are you missing 'System.Linq' or 'MvcSiteMapProvider.Linq' or 'System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder' using directive?

Description: Error compiling a resource required to service this request. Review your source file and modify it to fix this error.

Details: CS1061: Type 'MvcSiteMapProvider.Web.Html.Models.SiteMapNodeModelList' does not contain a definition for 'Any' and no extension method 'Any' of type 'MvcSiteMapProvider.Web.Html.Models.SiteMapNodeModelList' could be found. Are you missing 'System.Linq' or 'MvcSiteMapProvider.Linq' or 'System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder' using directive?

Error origin: Compiler

Error source file: /my-project/Views/Shared/DisplayTemplates/SiteMapHelperModel.ascx

Exception stack trace: at System.Web.Compilation.AssemblyBuilder.BuildAssembly (System.Web.VirtualPath virtualPath, System.CodeDom.Compiler.CompilerParameters options) [0x002fa] in /Users/builder/jenkins/workspace/build-package-osx-mono/2017-12/external/bockbuild/builds/mono-x64/mcs/class/System.Web/System.Web.Compilation/AssemblyBuilder.cs:853 at System.Web.Compilation.AssemblyBuilder.BuildAssembly (System.Web.VirtualPath virtualPath) [0x00000] in /Users/builder/jenkins/workspace/build-package-osx-mono/2017-12/external/bockbuild/builds/mono-x64/mcs/class/System.Web/System.Web.Compilation/AssemblyBuilder.cs:731 at System.Web.Compilation.BuildManager.GenerateAssembly (System.Web.Compilation.AssemblyBuilder abuilder, System.Web.Compilation.BuildProviderGroup group, System.Web.VirtualPath vp, System.Boolean debug) [0x00202] in /Users/builder/jenkins/workspace/build-package-osx-mono/2017-12/external/bockbuild/builds/mono-x64/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:826 at System.Web.Compilation.BuildManager.BuildInner (System.Web.VirtualPath vp, System.Boolean debug) [0x00106] in /Users/builder/jenkins/workspace/build-package-osx-mono/2017-12/external/bockbuild/builds/mono-x64/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:451 Error source context: Error lines: 7, 8

5: <ul class="siteMap">
6: <% foreach (var node in Model.Nodes) { %>
7:     <li><%=Html.DisplayFor(m => node)%>
8:     <% if (node.Children.Any()) { %>
9:         <%=Html.DisplayFor(m => node.Children)%>
metzing commented 6 years ago

As the exception message suggests, you might be missing a using statement in your view?

hurynnx commented 6 years ago

Just add >> using System.Linq;