J'ai un problème avec MvcSiteMap. Je reçois NullreferenceException lors de l'interférence sur Model.Nodes car Model est NULL.MvcSiteMap - NullreferenceException lors de l'itération sur Model.Nodes. (ASP.NET MVC3 Razor)
Je l'ai eu en travaillant avec @ Html.MvcSiteMap(). Menu() mais quand j'essaye les échantillons de votre DisplayTemplate j'obtiens cette NullreferenceException.
J'ai copié, collé le code du modèle, donc je ne vois pas pourquoi cela ne fonctionne pas. Peut-être que j'ai oublié quelque chose?
Heres mon code:
Mvc.sitemap
<?xml version="1.0" encoding="utf-8" ?>
<mvcSiteMap xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-3.0" enableLocalization="false" >
<mvcSiteMapNode title="TestProject" action="Index" controller="Home" changeFrequency="Always" updatePriority="Normal">
<mvcSiteMapNode title="Test" action="Index" controller="Home">
<mvcSiteMapNode title="Test1_5" action="Test1_5" controller="Home">
<mvcSiteMapNode title="Test1_4" action="Test1_4" />
<mvcSiteMapNode title="Test1_1" action="Test1_1" />
<mvcSiteMapNode title="Test1_6" action="Test1_6" />
<mvcSiteMapNode title="Test1_2" action="Test1_2"/>
<mvcSiteMapNode title="Test1_3" action="Test1_3"/>
</mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMap>
TestSiteMap.cshtml
@model MvcSiteMapProvider.Web.Html.Models.MenuHelperModel
@using System.Web.Mvc.Html
@using MvcSiteMapProvider.Web.Html.Models
@{
ViewBag.Title = "TestSiteMap";
}
<h2>TestSiteMap</h2>
<ul>
@foreach (var node in Model.Nodes)
{
<li>@Html.DisplayFor(m => node)
@if (node.Children.Any())
{
@Html.DisplayFor(m => node.Children)
}
</li>
}
</ul>
HomeController.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace MvcApplication3.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Message = "Welcome to ASP.NET MVC!";
return View();
}
public ActionResult TestSiteMap()
{
return View();
}
Je ne peux pas comprendre ce que je fais faux!
J'espère que n'importe qui peut aider! Merci!
pouvez-vous poster votre code 'Action'? –