2013-06-20 62 views
4

我在我的應用程序佈局的應用程序中使用twitter引導程序包。 我主要使用_BootstrapLayout.basic.cshtml作爲我的默認佈局。MVC在導航欄中顯示登錄用戶的名字

@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> 

這給了我與導航欄 enter image description here

頁我怎樣才能顯示歡迎信息,以登錄用戶在導航欄的右下角?像歡迎ABC一樣!和一些註銷選項的一面? 我唯一知道的是我可以從User.Identity.Name獲得當前用戶的名字,但我不知道如何使它出現在菜單欄上。 我找不到可以幫助我的東西,所以我想可能是我可以在這裏得到它。

編輯:鑑於 添加後@User.Identity.Name我上面提到的代碼添加後<ul>標籤與@html.navigation ,這就是我得到 enter image description here

我拿到菜單欄上的歡迎演示(旁邊的簡介,很難看到),但它沒有像我預期的那樣。 Bootstrap提供的DefaultRouteConfig可以做些什麼嗎?

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()) 
       ; 

     } 
    } 
+0

什麼你到目前爲止嘗試過嗎?你更有可能得到一個具體問題的答案,而不是問「告訴我如何做X」。 – Rob

+0

我知道我可以從User.Identity.Name獲取當前用戶的名字,但我不知道如何在右側的菜單欄中顯示它。我的想法在這個實現中處於空白狀態。 – Cybercop

+1

你有多少關於twitter bootstrap的知識?看看@ Html.Navigation剃刀擴展。 – gdp

回答

6

在包含nav的div元素之後,只需添加另一個div元素並將用戶名放在那裏。

喜歡的東西:

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

ul標籤的樣式爲引導的導航因此,創建一個

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

應該OK,你可以用動作鏈接到用戶的管理,而不是#

+0

我已經完成你提到的。我已經將結果發佈爲編輯。工程,但不是預期的。看起來很有趣:) – Cybercop

+0

你需要添加樣式來使它看起來如何。你如何知道bootstrap,CSS等......可能值得尋找一些引導示例。因爲我們並不確切知道你在努力達成什麼樣的難題來回答樣式問題。也許添加一個你正在獲得什麼和你想要達到什麼的屏幕截圖。 –

相關問題