3

我在我的应用程序中使用 twitter 引导程序包进行应用程序布局。我主要使用 _BootstrapLayout.basic.cshtml 作为我的默认布局。

@using System.Web.Optimization
@using BootstrapSupport
@using NavigationRoutes
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>@ViewBag.Title</title>
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link href="@Styles.Url("~/content/css")" rel="stylesheet"/>
        @RenderSection("head", required: false)
        @RenderSection("jtable", required:false)
        @Html.Partial("_html5shiv")
        @* favicons and touch icons go here *@
    </head>
    <body>
        <div class="navbar navbar-inverse navbar-fixed-top">
            <div class="navbar-inner">
                <div class="container">
                    <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                    </a>
                    <a class="brand" href="#" title="change in _bootstrapLayout.basic.cshtml">Sorama</a>
                    <div class="nav-collapse collapse">
                        <ul class="nav">
                            @Html.Navigation()
                        </ul>
                    </div>
                </div>
            </div>
        </div>        
        <div class="container">
            @Html.Partial("_alerts")
            @Html.Partial("_validationSummary")
            @RenderBody()   
            <hr>
            <footer>
                <p>&copy; Sorama @System.DateTime.Now.ToString("yyyy")</p>
            </footer> 
        </div>
         @Scripts.Render("~/js")
         @RenderSection("Scripts", required: false)
    </body>
</html>

这给了我一个带有导航栏的页面 在此处输入图像描述

如何向导航栏右上角的登录用户显示欢迎消息?欢迎ABC之类的东西!还有一些注销选项?我唯一知道的是我可以从中获取当前用户的名称,User.Identity.Name但我不知道如何让它出现在菜单栏上。我找不到可以帮助我的东西,所以我想也许我可以在这里得到它。

编辑:在视图中添加后,我在标记@User.Identity.Name后添加了上面提到的代码 ,这就是我得到的 <ul>@html.navigation在此处输入图像描述

我在菜单栏上看到了欢迎演示(在个人资料旁边,很难看到),但这与我预期的完全不同。DefaultRouteConfigBootstrap 提供的东西可以做些什么吗?

 public class LayoutsRouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.MapNavigationRoute<ModuleController>("Module", c => c.Index());
            routes.MapNavigationRoute<AccountController>("Hardware", c => c.Login());
            routes.MapNavigationRoute<LayoutsController>("Profile", c => c.Starter())
                  .AddChildRoute<LayoutsController>("Change Password", c => c.Marketing())
                  .AddChildRoute<AccountController>("Add User", c => c.Register())
                  .AddChildRoute<LayoutsController>("Logout", c => c.SignIn())
                ;

        }
    }
4

1 回答 1

6

在包含导航的 div 元素之后,只需添加另一个 div 元素并将用户名放入其中。

就像是:

<div>@User.Identity.Name</div>

ul标签的样式用于引导导航,因此创建一个

<li> <a href="#"> @User.Identity.Name</a></li> 

应该看起来不错,您可以使用操作链接来进行用户管理,而不是#

于 2013-06-20T14:24:19.063 回答