Kin*_*sin 3 c# asp.net-mvc viewdata razor
我将为我的应用程序构建一个使用许多向导的帮助程序.对于我的观点,有一个简单的电话:
@using (var wiz = MyHelper.EditWizard(Translate(Keys.User.ChangePasswordTitle)))
{
// RenderPartial(...)
}
Run Code Online (Sandbox Code Playgroud)
而是MyHelper一个自己的实现,HtmlHelper其原始的helper-object被封装为一个属性.
由于向导可以包含多个步骤,因此可以将内容拆分为多个部分视图.变量wiz有一些我需要在部分中访问的公共方法.
问题是,我怎样才能通过wiz-object?
在里面,EditWizard()我正在尝试将向导添加到ViewData.
myHelper.HtmlInternal.ViewData["currentWizard"] = theWizard;
Run Code Online (Sandbox Code Playgroud)
但是,在我的部分中,ViewData-dictionary总是为空的.目前我尝试获取数据
var wiz = (Wizard)ViewData["currentWizard"];
Run Code Online (Sandbox Code Playgroud)
但wiz总是如此null.
我们使用HtmlHelper.Partial其作为第二个参数的对象模型:
@Html.Partial("YourWizardOrWhatever", wiz)
Run Code Online (Sandbox Code Playgroud)
在这种情况下,Wiz被提供作为局部视图的模型.您还可以转发整个模型:
@Html.Partial("YourWizardOrWhatever", Model)
Run Code Online (Sandbox Code Playgroud)
或者您可以使用匿名类型来制作一些参数:
@Html.Partial("YourWizardOrWhatever", new { step = Model.Step, answer = Model.LastAnswerOrSomething })
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1971 次 |
| 最近记录: |