مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

1372611

عضویت از 1395/04/27

طریقه ساخت منو و زیر منو به صورت پویا و پارشیال (با استفاده از بانک)

  • پنجشنبه 4 شهریور 1395
  • 13:10
تشکر میکنم

با سلام 

من ازمطلبی که برای  ساخت منو و زیر منو به صورت پویا و پارشیال (با استفاده از بانک) قرار داده بودین استفاده کردم ولی خطای  System.InvalidOperationException  رو بهم میده به نظرتون دلیلش چی می تونه باشه؟

پاسخ های این پرسش

تعداد پاسخ ها : 9 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 4 شهریور 1395
  • 14:37

کدتون و متن خطا را قرار دهید

کاربر سایت

1372611

عضویت از 1395/04/27

  • پنجشنبه 4 شهریور 1395
  • 14:52

کد 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 هم شامل لیستی ازدسته بندی ها هستش

وخطایی که میده

 

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 4 شهریور 1395
  • 16:29

به شکل زیر بنویسید

@Html.Action("Action_Menu", "Home");

 

کاربر سایت

1372611

عضویت از 1395/04/27

  • پنجشنبه 4 شهریور 1395
  • 17:05

باز هم همون خطا رو میده .

اصلا وارد Action_Menuنمی شه

 

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 4 شهریور 1395
  • 17:07

صفت outputcatch را بردارید

اگر استفاده میکنید باید duration  بدید

کاربر سایت

1372611

عضویت از 1395/04/27

  • پنجشنبه 4 شهریور 1395
  • 18:25

الان اون خطا رو نمی ده ولی متاسفانه چیزی نشون نمی ده .

وقتی تریس میکنم وارد 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>

ببخشید خیلی اذیتتون می کنم ولی اگه میشه به این هم یه نگاهی بندازین.

کاربر سایت

علی شهریاری

عضویت از 1393/05/30

  • پنجشنبه 4 شهریور 1395
  • 20:44

با سلام

دوست عزیز بعد از اجرا توی مرورگر کد های html رو برسی کنید ببینید کد های html مربوط به منو تولید شدن یا نه . شاید کد ها تولید شدن ولی مشکل از css  باشه

کاربر سایت

1372611

عضویت از 1395/04/27

  • پنجشنبه 4 شهریور 1395
  • 22:08

کدهای html اش تولید شده به نظرتون cssاش چه مشکلی می تونه داشته باشد یعنی کدهای css اش رو عوض کنم؟

کاربر سایت

علی شهریاری

عضویت از 1393/05/30

  • پنجشنبه 4 شهریور 1395
  • 23:22

خب وقتی کد های html شده یعنی اینکه مشکل از برنامه نویسی سمت سرور نیست . توی سایت  getbootstrap

نحوه صحیح استفاده از منوی ابشاری رو ببینید

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)