C# ASP.NET 导航栏图像路径在不同页面中更改



我正在做一个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.MasterMainContent的完整代码,这里是相关代码,包含上面的代码:

<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>&copy; <%: 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>

希望对你有帮助

相关内容

  • 没有找到相关文章

最新更新