我将为我的应用程序创建一个助手,该应用程序使用许多向导。对于我的视图,只需简单调用:
@using (var wiz = MyHelper.EditWizard(Translate(Keys.User.ChangePasswordTitle)))
{
// RenderPartial(...)
}
MyHelper
是一个自己实现的 HtmlHelper
,其中原始的帮助对象封装为一个属性。
由于向导可以包含多个步骤,因此内容可以分成多个部分视图。变量 wiz
具有我需要在部分视图中访问的一些公共方法。
问题是,如何传递 wiz
对象?
在 EditWizard()
内部,我试图将向导添加到 ViewData
中。
myHelper.HtmlInternal.ViewData["currentWizard"] = theWizard;
然而,我的局部视图中,ViewData
字典总是为空的。目前我尝试通过以下方式获取数据:
var wiz = (Wizard)ViewData["currentWizard"];
但是
wiz
始终为null
。
HtmlHelper
是我的自定义助手的一部分。myHelper.HtmlInternal
是原始的HtmlHelper
对象。 - KingKerosin