调用控制器和方法时,导航栏图像未显示在 MVC 视图上
Posted
技术标签:
【中文标题】调用控制器和方法时,导航栏图像未显示在 MVC 视图上【英文标题】:Navbar image not displaying on MVC view when calling controller and method 【发布时间】:2014-10-18 18:27:59 【问题描述】:问题背景:
我正在一个 MVC 项目中使用 book strap 完成网站的开发。
问题:
如图所示,当运行网站并且未明确键入 home[controller]\Index[method] 时,导航栏中的徽标会正确显示:
当输入返回其关联视图的控制器和方法名称时,它不在导航栏中显示徽标。
代码:
标题 - 包含导航栏 - 和页脚位于它们自己的 cshtml 文件名 _Layout.cshtml 中,可以由使用@RenderBody 方法创建的任何其他视图继承,如下所示:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - My ASP.NET Application</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
<body>
<div class="navbar navbar-fixed-top">
<nav class="navbar navbar-default" role="navigation" id="nav">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand"><img src="images/logo.png" ></a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Menu<span class="caret"></span></a>
<ul class="dropdown-menu" role="menu">
<li><a href="#myCarousel">Projects</a></li>
<li><a href="#Welcome">Welcome</a></li>
<li><a href="#features">Workplace, Education, Development</a></li>
<li><a href="#About">About Me</a></li>
<li><a href="#Location">Location</a></li>
<li><a href="#Contact">Contact Me</a></li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
</div>
<div class="container body-content">
@RenderBody()
</div>
<footer>
<div class="container">
<div class="row">
<div class="col-sm-12 textAlignCenter">
<h5>Copyright © 2014</h5>
</div>
</div>
</div>
</footer>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</body>
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@RenderSection("scripts", required: false)
</html>
任何帮助确定徽标不会显示的原因将不胜感激。
【问题讨论】:
【参考方案1】:将您的图像路径更改为相对,
<a class="navbar-brand"><img src="@Url.Content("~/images/logo.png")" ></a>
【讨论】:
@Venkat 谢谢!不敢相信我错过了。以上是关于调用控制器和方法时,导航栏图像未显示在 MVC 视图上的主要内容,如果未能解决你的问题,请参考以下文章
在.net core 6的导航栏中显示用户个人资料图片[关闭]