Dynamic Navbar Update Problem

It might be an old question. I have recently created a website where the Navbar menus are dynamically generated by category. Inside those categories, different posts are created from the backend.  Now the problem is when I change the name of the category, it is obvious that the <li> name in the website will also be updated. But it is not happening. Funny part is, it is changing in the database. I already checked that. When I am stopping my project and re-running it again, then it is working. Can anyone help me out with the problem?


N:B- I am taking my category name data through a global viewbag filter. 

This is the code.

public override void OnResultExecuting(ResultExecutingContext filterContext)
filterContext.Controller.ViewBag.WorkList = db.tbl_work.OrderByDescending(a=>a.work_id).ToList();
filterContext.Controller.ViewBag.WorkCategoryList = db.tbl_work_category.ToList();
filterContext.Controller.ViewBag.ServiceList = db.tbl_service.OrderByDescending(a => a.service_id).ToList();
filterContext.Controller.ViewBag.ServiceCategoryList = db.tbl_service_category.ToList();
filterContext.Controller.ViewBag.WorkMenuName = db.tbl_work.DistinctBy(a=>a.menu_id).ToList();
filterContext.Controller.ViewBag.ServiceMenuName = db.tbl_service.DistinctBy(a => a.menu_id).ToList();
filterContext.Controller.ViewBag.GalleryMenuName = db.tbl_gallery.DistinctBy(a => a.menu_id).ToList();
filterContext.Controller.ViewBag.ContactMenuName = db.tbl_contact.DistinctBy(a => a.menu_id).ToList();


Asked by:- SalmanZahir
: 2084 At:- 5/8/2018 5:45:46 AM
asp.net asp.net mvc

1 Answers
profileImage Answered by:- neena

Your implementation is not correct, OnResultExecuting will not return updated data to you, that's because in the OnResultExecuting you are replacing the current result with a new instance. That will modify the result in the ResultExecutingContext but will leave the overall result unchanged.

Read some of the details on this 


Similar Issue(not exactly same)


My opinion to you would be, load dynamic menu by creating a partial View and then load data in usual Actionresult controller method and return a partial view in all the pages where you need a dynamic menu(probably it would be _layout.cshtml)

At:- 5/8/2018 7:50:43 AM

Login/Register to answer
Register directly by posting answer/details

Full Name *

Email *

By posting your answer you agree on privacy policy & terms of use