我有一个 SiteNavigation 类,它在我的基本控制器的 Initialize 事件中被更新,例如
[Serializable]
public class SiteNavigation
{
public SiteNavigation()
{
IsSummarySelected = true;
}
public Model.Dtos.Folder[] Folders { get; set; }
public bool IsSummarySelected { get; set; }
}
protected override void Initialize(System.Web.Routing.RequestContext requestContext)
{
base.Initialize(requestContext);
var siteNavigation = new SiteNavigation();
siteNavigation.Folders = GetMeMyFolders() as Folder[];
ViewBag.SiteNavigation = siteNavigation;
}
并且在控制器中 IsSummarySelected 属性更改为此值。
ViewBag.SiteNavigation.IsSummarySelected = false;
当我使用这行代码访问 _Layout 文件中的属性时,该值始终为 true。就好像 nav 对象再次被新建并且构造函数将其设置为 true。
@if (ViewBag.SiteNavigation.IsSummarySelected)
我已经尝试将导航对象转换回变量并以这种方式设置属性,没有骰子。任何帮助,将不胜感激。
叫我莫名其妙!
谢谢你,斯蒂芬