Thursday, January 26, 2017

Part 31 - How to create dynamic menu using partial view and bootstrap in Asp.net mvc


#Expected Output 



#Controller Code


using MVCTutorial.Models;
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Threading;
using System.Web;
using System.Web.Mvc;

namespace MVCTutorial.Controllers
{
    public class TestController : Controller
    {

        public ActionResult Index()
        {           
            return View();
        }

        public ActionResult SideMenu() {

            List<MenuItem> list = new List<MenuItem>();

            list.Add(new MenuItem { Link = "/Test/Index", LinkName = "Home" });
            list.Add(new MenuItem { Link = "/Test/Login", LinkName = "Login" });
            list.Add(new MenuItem { Link = "/Test/Registration", LinkName = "Register" });


            return PartialView("SideMenu", list);
        }

    }
}

  
#Model (MenuItem.cs) 


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MVCTutorial.Models
{
    public class MenuItem
    {
        public string LinkName { get; set; }
        public string Link { get; set; }
    }
}

 # View Page (Index.cshtml)


@{
    ViewBag.Title = "Index";
    // Layout = null;
}

<div class="panel panel-body" style="min-height:256px">

    <div class="col-md-3">

        @{ Html.RenderAction("SideMenu", "Test");}

    </div>
    <div class="col-md-9">
        @*Write your rest content here*@
    </div>

</div>

 # Partial View  (SideMenu.cshtml)- Add this into shared folder


@model IEnumerable<MVCTutorial.Models.MenuItem> 

<div class="panel panel-default" >
    <div class="panel-heading">
        <h4>Menu Item</h4>
    </div>
    <div class="panel-body">
        <ul class="list-group">

            @if (Model != null)
            {

                foreach (var item in Model)
                {

                    <li class="list-group-item"><a href="@item.Link" class="btn btn-primary btn-block">@item.LinkName</a></li>

                }
            }

            <li class="list-group-item"><a href="http://google.com" class="btn btn-success btn-block">Google</a></li>
            <li class="list-group-item"><a href="http://technotipstutorial.blogspot.com" class="btn btn-warning btn-block">Official Blog</a></li>

        </ul>
    </div>
</div>


<div class="thumbnail">
    <div class="panel panel-primary">
        <div class="panel-heading">
            <h3 class="panel-title">Director Message</h3>
        </div>
    </div>
    <img src="~/Content/Images/director1.jpg" alt="..." style="margin-top:-20px">
    <div class="caption">
        <h3>Ashish Tiwary</h3>
        <p>&para; Have faith in us, We will give you full satisfaction by providing best service. &para;</p>
        <p><a href="#" class="btn btn-primary" role="button">See more</a> </p>
    </div>
</div>


   

All Code Factory

3 comments:

haripriya said...

This is an awesome post.Really very informative and creative contents. These concept is a good way to enhance the knowledge.I like it and help me to development very well.Thank you for this brief explanation and very nice information.Well, got a good knowledge.
Data Science Training in Chennai
Data Science training in kalyan nagar
Data science training in Bangalore
Data Science training in marathahalli
Data Science interview questions and answers
Data science training in jaya nagar

aarthi said...

The coding are really awesome.it is working. waiting for future updates.
Java training in Chennai | Certification | Online Course Training | Java training in Bangalore | Certification | Online Course Training | Java training in Hyderabad | Certification | Online Course Training | Java training in Coimbatore | Certification | Online Course Training | Java training in Online | Certification | Online Course Training


Kanika said...

Good Post! , it was so good to read and useful to improve my knowledge as an updated one, keep blogging. After seeing your article I want to say that also a well-written article with some very good information which is very useful for the readers....thanks for sharing it and do share more posts like this.
AWS Online Training
Online AWS Certification Training