با سلام
من ازمطلبی که برای ساخت منو و زیر منو به صورت پویا و پارشیال (با استفاده از بانک) قرار داده بودین استفاده کردم ولی خطای System.InvalidOperationException رو بهم میده به نظرتون دلیلش چی می تونه باشه؟
کدتون و متن خطا را قرار دهید
کد HomeController
using Gardeshgar.Models; using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace Gardeshgar.Controllers { public class HomeController : Controller { public ActionResult Index() { return View(); } [ChildActionOnly] [OutputCache] public ActionResult Action_Menu() { ApplicationDbContext db = new ApplicationDbContext(); var model = new ViewModel.MenuList(); model.Groups = db.PostCateqories.ToList(); return PartialView("_ShowCategory",model); }
کد مربوط به partaialView
@model Gardeshgar.ViewModel.MenuList <nav id="menu" class="nav-collapse collapse default-menu"> <ul id="menu-top-menu" class="nav"> @foreach (var MainMenu in Model.Groups.Where(m => m.PatrentId == null).ToList()) { <li class="dropdown current_page_item" data-dropdown="dropdown"> <a href="/Category/@MainMenu.Category" class="dropdown-toggle" data-target="#">@MainMenu.Category</a> <ul class="dropdown-menu"> @foreach (var SubMenu in Model.Groups.Where(m => m.PatrentId == @MainMenu.ID).ToList()) { <li> <a href="/Category/@SubMenu.Category">@SubMenu.Category.ToString()</a> </li> } </ul> </li> } </ul> </nav>
وکدی که در قسمت layout گذاشتم
@{ Html.RenderAction("Action_Menu", "Home"); }
وMenuList هم شامل لیستی ازدسته بندی ها هستش
وخطایی که میده
به شکل زیر بنویسید
@Html.Action("Action_Menu", "Home");
باز هم همون خطا رو میده .
اصلا وارد Action_Menuنمی شه
صفت outputcatch را بردارید
اگر استفاده میکنید باید duration بدید
الان اون خطا رو نمی ده ولی متاسفانه چیزی نشون نمی ده .
وقتی تریس میکنم وارد partialview میشه ودسته بندی هارو دونه دونه می خونه ولی موقع برگشت به Layout چیزی نشون نمی ده
اینم partialview
@model Gardeshgar.ViewModel.MenuList <nav id="menu" class="nav-collapse collapse default-menu"> <ul id="menu-top-menu" class="nav"> @foreach (var MainMenu in Model.Groups.Where(m => m.PatrentId == null).ToList()) { <li class="dropdown current_page_item" data-dropdown="dropdown"> <a href="/Category/@MainMenu.Category" class="dropdown-toggle" data-target="#">@MainMenu.Category</a> <ul class="dropdown-menu"> @foreach (var SubMenu in Model.Groups.Where(m => m.PatrentId == @MainMenu.ID).ToList()) { <li> <a href="/Category/@SubMenu.Category">@SubMenu.Category.ToString()</a> </li> } </ul> </li> } </ul> </nav>
ببخشید خیلی اذیتتون می کنم ولی اگه میشه به این هم یه نگاهی بندازین.
با سلام
دوست عزیز بعد از اجرا توی مرورگر کد های html رو برسی کنید ببینید کد های html مربوط به منو تولید شدن یا نه . شاید کد ها تولید شدن ولی مشکل از css باشه
کدهای html اش تولید شده به نظرتون cssاش چه مشکلی می تونه داشته باشد یعنی کدهای css اش رو عوض کنم؟
خب وقتی کد های html شده یعنی اینکه مشکل از برنامه نویسی سمت سرور نیست . توی سایت getbootstrap
نحوه صحیح استفاده از منوی ابشاری رو ببینید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)