在cshtml頁面中,如果想使用C#的一些類或者方法的時候,需要在cshtml頁面的頂部導入這個類或者方法的命名空間。
但是如果界面過多的話,每次都這樣導入命名空間的話,還是很麻煩的。
更簡便的方法:
打開Views文件夾下的web.config文件,尋找system.web.webPages.razor節點,在該節點下將該命名空間添加上,就可以不用重復的添加命名空間了。
如果在添加上這個命名空間之后,在cshtml中還是會報錯,只需要將該界面關閉重新打開就可以了。
=======================================================================================
Layout的布局
在asp.net中有母版頁,對應的asp.net mvc中也有母版頁,使用的是Layout頁面來充當母版頁。
1.創建Layout頁面,一般都將Layout頁面存放在Views文件夾下,如果放在別的目錄下也是可以的。
2.cshtml頁面使用Layout頁面
其中上面的@RenderBody()就是截面里面的"你好呀,小姐姐"占位符
其他占位符
在母版頁中定義:@RenderSection("定義的名字")
在cshtml頁面中使用占位符:
@section 定義的名字
{
這里面寫占位符里的內容
}
但是如果在Layout頁面中創建了自定義占位符,但是沒有在cshtml頁面中實現,會出現如下錯誤:
在@RenderSection("自定義名字",false) 表示如果在cshtml頁面中沒有實現自定義占位符的話,也不會報錯。默認是true
還可以在Layout頁面中這樣定義:
@if(IsSectionDefined("left")) { @RenderSection("left") } else { <text>左邊默認內容</text> }