【发布时间】:2013-08-06 02:08:13
【问题描述】:
我的主站点和管理区域都使用了一个布局文件。在布局中,我调用 MVCSiteMapProvider 来生成我的布局。我想做的是在 _ViewStart 文件中设置一个字符串,我可以将其传递到布局中以指定要使用的站点地图。是否可以将 _ViewStart 中的变量传递到 Layout 文件中,如果可以,如何?
【问题讨论】:
标签: asp.net-mvc-4 razor-2
我的主站点和管理区域都使用了一个布局文件。在布局中,我调用 MVCSiteMapProvider 来生成我的布局。我想做的是在 _ViewStart 文件中设置一个字符串,我可以将其传递到布局中以指定要使用的站点地图。是否可以将 _ViewStart 中的变量传递到 Layout 文件中,如果可以,如何?
【问题讨论】:
标签: asp.net-mvc-4 razor-2
您可以使用PageData。
提供对页面、布局页面和部分页面之间共享的页面数据的类似数组的访问。
C#
@{
PageData["MyString"] = "Test!";
}
VB.NET
@Code
PageData("MyString") = "Test!"
End Code
C#
@PageData["MyString"]
VB.NET
@PageData("MyString")
【讨论】:
您可以使用ViewBag。
在viewstart中:
@{
ViewBag.YourString = "any string";
}
在布局中:
@{
var str = (string)ViewBag.YourString;
}
【讨论】:
_ViewStart 可以直接访问 ViewData。这是WebPageBase。