2014-09-20 35 views
0

我是Visual Studio的新手,並且難以正確地創建ViewBag.Title函數。ViewBag.Title不能在我的代碼中工作ASP.NET MVC 4

這裏是我的代碼ViewBag.Title工作不正常,並在屏幕上打印錯誤的位置和完整的字符串「ViewBag.Title =」主頁「;」

@model IEnumerable<Employees.Models.Employee> 
    @{WebGrid grid = new WebGrid(Model);} 
    { 
    ViewBag.Title = "Home Page"; 
    } 
    @section featured { 
     <section class="featured"> 
      <div class="content-wrapper"> 
       <hgroup class="title"> 
        <h1>@ViewBag.Title.</h1> 
        <h2>@ViewBag.Message</h2> 
       </hgroup> 
    @grid.GetHtml(columns: new[] { 
    .... 
    .... 

回答

1

我敢肯定,你只需要在您與@

@{ 
    ViewBag.Title = "Home Page"; 
    } 

這是因爲渲染就像是直接的HTML

+0

由於剛分配到ViewBag.Title前綴代碼塊我需要什麼才能使它工作。 – MaxReiger 2014-09-20 02:51:36

+1

您可以將該代碼移動到一個塊中 @ {WebGrid grid = new WebGrid(Model); ViewBag.Title =「Home Page」;}儘可能爲預編譯器優化做到這一點是很好的做法。當您發佈網站時,您可以選擇預編譯它,並將所有視圖構建到生成的程序集中以提高性能。在一個塊中保留儘可能多的代碼可以在預編譯時優化代碼生成。未預編譯時,MVC引擎在運行時編譯視圖(訪問時)增加加載時間。 – 2014-09-20 03:08:24

+0

@Ryios是的網站需要幾秒鐘加載。而且它在塊內更快。 – MaxReiger 2014-09-20 05:10:43