2013-10-15 56 views
0

我是剃鬚刀新手,我正在嘗試新事物。有什麼辦法,使用剃鬚刀的文件中有一個變量,可以通過渲染頁面訪問,而無需傳遞變量?剃刀中的公共變量

舉例來說,如果它有代碼

@{var myVal = 9;} 

@RenderPage("_page.cshtml") 

是否有宣稱這樣設爲myVal它可以通過_page.cshtml訪問的任何頁面稱爲index.cshtml? 我不想傳遞RenderPage函數的變量形式,因爲我將渲染更多頁面並且不想單獨傳遞變量。

回答

0

是否有聲明的設爲myVal任何方式,以便它可以通過_page.cshtml訪問

是的,你可以將其存儲在ViewBag例如

public class MyController : Controller 
{ 
    public ActionResult Index() 
    { 
     ViewBag.MyVal = 9; 
     return Index(); 
    } 
} 

_page.cshtml

<p>My val is @ViewBag.MyVal</p> 
+0

這是類似於會話變量? –

+0

@NevilleNazerane他們在頁面中直接訪問它們是相似的,但是,就兩者之間的相似而言,它們是相似的。在壽命,實現和使用方面它們是完全不同的。 – James

+0

@NevilleNazerane我已經更新了一個例子。 – James