我正在做一个C#ASP.NET Web应用程序,只是在我的学习阶段。
我的 Site.Master 中有一个导航栏,当我处于默认.aspx ( /~
( 时,可以看到图像。但是当我更改页面时,例如。到 ( ~/Account/Register
( 找不到图像。
在我的导航栏中图像的代码:
<a href="~/" class="navbar-left"><img style="margin:10px; margin-left:30px;" width="30px" height="30px" src="logo_abstract.png"></a>
要查看我的Site.Master
和MainContent
的完整代码,这里是相关代码,包含上面的代码:
<div class="navbar navbar-inverse navbar-fixed-top">
<a href="~/" class="navbar-left"><img style="margin:10px; margin-left:30px;" width="30px" height="30px" src="brain_stransparent_abstract.png"></a>
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" runat="server" href="~/">TestApp</a>
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li><a runat="server" href="~/">Home</a></li>
<li><a runat="server" href="~/About">About</a></li>
<li><a runat="server" href="~/Contact">Contat</a></li>
</ul>
<asp:LoginView runat="server" ViewStateMode="Disabled">
<AnonymousTemplate>
<ul class="nav navbar-nav navbar-right">
<li><a runat="server" href="~/Account/Register"><span class="glyphicon glyphicon-user"></span> Sign Up</a></li>
<li><a runat="server" href="~/Account/Login"><span class="glyphicon glyphicon-log-in"></span> Login</a></li>
</ul>
</AnonymousTemplate>
<LoggedInTemplate>
<ul class="nav navbar-nav navbar-right">
<li>
<a runat="server" href="~/Account/Manage" title="Manage your account">
<img src="http://placehold.it/18x18" class="profile-image img-circle">
<%: Context.User.Identity.GetUserName() %> <b class="caret"></b>
</a>
</a></li>
<li>
<asp:LoginStatus runat="server" LogoutAction="Redirect" LogoutText="Log off" LogoutPageUrl="~/" OnLoggingOut="Unnamed_LoggingOut" />
</li>
</ul>
</LoggedInTemplate>
</asp:LoginView>
</div>
</div>
</div>
<div class="container body-content">
<asp:ContentPlaceHolder ID="MainContent" runat="server">
</asp:ContentPlaceHolder>
<hr />
<footer>
<p>© <%: DateTime.Now.Year %> - Test</p>
</footer>
</div>
我想,我需要为我的图像设置一条路径,这是来自任何地方的相同路径,但我不知道任何词来形容这个,谷歌或其他东西。
这是因为在运行时,内部页面中的路径无法找到图像,因此对于任何链接或图像路径,都应使用 Page.ResolveUrl 方法
<a href="<%= Page.ResolveUrl("~/Account/Manage.aspx"); %>" class="navbar-left"><img style="margin:10px; margin-left:30px;" width="30px" height="30px" src="<%= Page.ResolveUrl("~/Images/logo_abstract.png"); %>"></a>
希望对你有帮助