Witam,
piszę sklep internetowy i mam problem z okruszkami. Może ktoś już spotkał się z takim problemem i potrafi pomóc.
Zaczynając chciałbym wyjaśnić o co chodzi:
Mam w pliku _Layout renderowany PartialView (CategoriesList) odpowiedzialny za wyświetlanie kategorii. Po kliknięciu w kategorię (obojętnie którą) wyświetlone zostają okruszki w postaci START > KATEGORIA TESTOWA 1. Jest ok, ale jak kliknę w inną kategorię to zawsze zwraca mi ten sam okruszek czyli KATEGORIA TESTOWA 1.
Kod klasy odpowiadającej za generowanie tych okruszków:
using MvcSiteMapProvider;
using NESTshop.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace NESTshop.Infrastructure
{
public class ProductListDynamicNodeProvider : DynamicNodeProviderBase
{
private ApplicationDbContext db = new ApplicationDbContext();
public override IEnumerable<DynamicNode> GetDynamicNodeCollection(ISiteMapNode node)
{
var returnValue = new List<DynamicNode>();
foreach (Category c in db.Category)
{
DynamicNode n = new DynamicNode();
n.Title = c.CategoryTitle;
n.Key = "Kategoria_" + c.CategoryID;
returnValue.Add(n);
}
return returnValue;
}
}
}
PartialView CategoriesList:
@using NESTshop.Models
@model List<Category>
<div class="jumbotron">
<h1>ASP.NET</h1>
<p class="lead">ASP.NET is a free web framework for building great Web sites and Web applications using HTML, CSS and JavaScript.</p>
<p><a href="http://asp.net" class="btn btn-primary btn-lg">Learn more »</a></p>
</div>
<div class="row">
<div class="col-md-12">
<h2>Kategorie</h2>
<ul class="categories">
@foreach (var cat in Model)
{
<li>
<img width="30" height="30"
src="@Url.Action("GetImage", "Categories", new { cat.CategoryID })" />
@*<img src="@Url.Content("~/Content/Images/Categories/" + cat.CategoryFile)" alt="" width="30" heigth="30"/>*@
@Html.ActionLink(cat.CategoryTitle, "ProductCategory", "Products", new { CategoryID = cat.CategoryID }, null)
</li>
}
</ul>
</div>
</div>
fragmencik widoku strony ProductsFromCategory:
@model List<Product>
@{
ViewBag.Title = "ProductCategory";
}
@Html.MvcSiteMap().SiteMapPath() <-----
modelu nie ma sensu wrzucać, nic po za CategoryTitle, CategoryID i CategoryFile tam nie ma.
Co jest nie tak że wyświetla mi za każdym razem tą samą nazwę kategorii, niezależnie od tego w którą kliknę? Proszę o podpowiedź, dziękuję za poświęcony czas i pomoc.
Pozdrawiam