给框架添加一个面包屑导航

1.创建一个类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace SAS.Model.AdminCommon
{ public class BreadCrumbsModel
{
public BreadCrumbsModel()
{
BreadCrumbList = new List<BreadCrumbModel>();
} public bool IsOnlyIndex { get; set; }
public string CurrentName { get; set; } public List<BreadCrumbModel> BreadCrumbList { get; set; }
} public class BreadCrumbModel
{
public bool IsIndex { get; set; }
public bool IsParent { get; set; }
public string Name { get; set; }
public string Icon { get; set; }
public string Url { get; set; }
public string Id { get; set; }
}
}

2.创建一个部分视图

 public PartialViewResult BreadCrumbs(string id)
{
List<BPMS_SysMenu> list = new List<BPMS_SysMenu>();
StringBuilder strWhere = new StringBuilder();
BPMS_SysMenu parentModule = new Model.BPMS_SysMenu();
BPMS_SysMenu childModule = new Model.BPMS_SysMenu();
list = bll.GetModelList(strWhere.ToString()); var model = new BreadCrumbsModel(); parentModule = bll.GetModel(id);
var module = bll.GetModelList(strWhere.ToString()).FirstOrDefault(d => d.MenuId == parentModule.ParentId);
if (module != null)
{
var parentModel = new BreadCrumbModel
{
IsParent = true,
Name = module.FullName,
//Url = module.NavigateUrl,
Icon = module.Img
};
model.BreadCrumbList.Add(parentModel);
var currentModel = new BreadCrumbModel
{
IsParent = false,
Name = parentModule.FullName,
Url = parentModule.NavigateUrl,
Id = parentModule.MenuId,
Icon = ""
};
model.CurrentName = currentModel.Name;
model.BreadCrumbList.Add(currentModel);
ViewBag.CurrentTitle = parentModule.FullName;
}
return PartialView(model);
}

3.给页面添加导航的视图代码

@using SAS.Model.AdminCommon
@model BreadCrumbsModel
<div class="page-bar">
<ul class="page-breadcrumb">
@foreach (var item in Model.BreadCrumbList)
{
if (item.IsIndex)
{
<li>
<i class="@item.Icon"></i>
<a href="@Url.Action("index", "main", new { Area = "admin" })" title="@item.Name">@item.Name</a>
<i class="fa fa-angle-right"></i>
</li> }
else
{
if (Model.BreadCrumbList.Count > 1)
{
if (item.IsParent)
{
<li>
<i class="@item.Icon"></i>
<a href="javascript:void(0)" title="@item.Name">@item.Name</a>
<i class="fa fa-angle-right"></i>
</li>
}
else
{
<li>
<a href="@item.Url?id=@item.Id">@item.Name</a>
</li>
}
}
}
}
</ul>
</div>
<h3 class="page-title">@Model.CurrentName</h3>

4.最后在要显示的地方,加上一段代码,即可运行

@{ Html.RenderAction("BreadCrumbs", "Main", new { id = @ViewBag.CLASSID });}

ASP.NET MVC 在项目中使用面包屑导航的更多相关文章

  1. [渣翻译] 在ASP.NET MVC WebAPI项目中使用 AngularJS

    原文地址http://blog.technovert.com/2013/12/setting-up-angularjs-for-asp-net-mvc-n-webapi-project/ 我们最近发布 ...

  2. ASP.NET MVC Web项目中使用Log4Net记录日志,并按照日志类型分文件存储

    1.创建MvcLog4Net项目 2.创建 空的MVC项目 3.项目创建完成的效果 4.选择项目,点击鼠标右键,在弹出菜单中选择“管理解决方案的 NuGet 程序包” 5. 在NuGet浏览界面: 点 ...

  3. Bootstrap <基础十八>面包屑导航(Breadcrumbs)

    面包屑导航(Breadcrumbs)是一种基于网站层次信息的显示方式.以博客为例,面包屑导航可以显示发布日期.类别或标签.它们表示当前页面在导航层次结构内的位置. Bootstrap 中的面包屑导航( ...

  4. Bootstrap-CL:面包屑导航

    ylbtech-Bootstrap-CL:面包屑导航 1.返回顶部 1. Bootstrap 面包屑导航(Breadcrumbs) 面包屑导航(Breadcrumbs)是一种基于网站层次信息的显示方式 ...

  5. Bootstrap——面包屑导航(Breadcrumbs)

    面包屑导航(Breadcrumbs)是一种基于网站层次信息的显示方式. Bootstrap 中的面包屑导航(Breadcrumbs)是一个简单的带有 .breadcrumb 类的无序列表. <o ...

  6. ASP.NET MVC搭建项目后台UI框架—8、将View中选择的数据行中的部分数据传入到Controller中

    目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...

  7. 使用Visual Studio 2015 开发ASP.NET MVC 5 项目部署到Mono/Jexus

    最新的Mono 4.4已经支持运行asp.net mvc5项目,有的同学听了这句话就兴高采烈的拿起Visual Studio 2015创建了一个mvc 5的项目,然后部署到Mono上,浏览下发现一堆错 ...

  8. ASP.NET MVC搭建项目后台UI框架—1、后台主框架

    目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...

  9. ASP.NET MVC搭建项目后台UI框架—11、自动加载下拉框查询

    ASP.NET MVC搭建项目后台UI框架—1.后台主框架 需求:在查询记录的时候,输入第一个字,就自动把以这个字开头的相关记录查找出来,输入2个字就过滤以这两个子开头的记录,依次类推. 突然要用到这 ...

随机推荐

  1. Android基站定位

    Android基站定位   一.通过手机信号获取基站信息 通过TelephonyManager 获取lac:mcc:mnc:cell-id(基站信息)的解释: MCC.Mobile Country C ...

  2. Hadoop格式化HDFS报错java.net.UnknownHostException: centos64

    异常描述 在对HDFS格式化,执行hadoop namenode -format命令时,出现未知的主机名的问题,异常信息如下所示: [shirdrn@localhost bin]$ hadoop na ...

  3. spring boot打包会有.war.original文件的原因 (笔记)

    今天使用spring boot 2.1.1.RELEASE版本搭建项目,虽然可以直接打包成可运行的jar包,但是由于公司准备采用docker容器来管理项目,所以需要把jar包变成war包,并且war包 ...

  4. hdu5861(Road)

    题目链接:传送门 题目大意:有n个点 组成n-1段,每一段开着的时候都有花费Vi,有m组要求,对于每组要求 [x,y]之间可达,对于每一段你有一次开关的机会(最初都是关闭的) 问怎样安排段落得开闭时间 ...

  5. 爬虫实战【11】Python获取豆瓣热门电影信息

    之前我们从猫眼获取过电影信息,而且利用分析ajax技术,获取过今日头条的街拍图片. 今天我们在豆瓣上获取一些热门电影的信息. 页面分析 首先,我们先来看一下豆瓣里面选电影的页面,我们默认选择热门电影, ...

  6. 活动窗口(Active),焦点窗口(Focus)和前景窗口(Foreground)之间的关系

    活动窗口(Active),焦点窗口(Focus)和前景窗口(Foreground)之间的关系 任何一个时候,我们的Windows桌面上总有一个最前台的窗口,其实说简单的,就是标题栏变成深蓝色的那个窗口 ...

  7. python中matplotlib绘图封装类之折线图、条状图、圆饼图

    DrawHelper.py封装类源码: import matplotlib import matplotlib.pyplot as plt import numpy as np class DrawH ...

  8. Kubernetes资源创建yml语法

    前言 在是用kubernetes中,我们对资源的创建大部分都是通过 1 kubelet create -f RESOURCE.yaml 刚开看的时候不免有一些迷茫,看不懂语法,不知道怎么写:今天本文就 ...

  9. 国内java,oa,weixin opensource framework www.jeecg.org

    Soap/rest 为API生,为框架死,为Debug奋斗一辈子!吃符号的亏,上大小写的当,最后死在需求上!

  10. iOS核心动画详解(一)

    前言 这篇文章主要是针对核心动画(Core Animation)的讲解,不涉及UIView的动画.因为内容较多,这篇文章会分为几个章节来进行介绍.本文主要是介绍核心动画的几个类之间的关系和CAAnim ...