Umbraco-将数据从曲面控制器传递到视图
我正在创建此联系人表单,您可以在文档中找到它: 问题是,在我的操作中,我向ViewData集合添加了一些数据,但无法进入视图 行动如下:Umbraco-将数据从曲面控制器传递到视图,umbraco,Umbraco,我正在创建此联系人表单,您可以在文档中找到它: 问题是,在我的操作中,我向ViewData集合添加了一些数据,但无法进入视图 行动如下: public ActionResult ProcessForm(ContactFormModel model) { if (!ModelState.IsValid) { // do something here return CurrentUmbracoPage(); } // process
public ActionResult ProcessForm(ContactFormModel model)
{
if (!ModelState.IsValid) {
// do something here
return CurrentUmbracoPage();
}
// process form
// set success flag
ViewData("SuccessMessage") = "We will be contacting you soon..";
return RedirectToCurrentUmbracoPage();
}
以下是视图:
<h1>@ViewData("SuccessMessage")</h1>
@ViewData(“成功消息”)
它将返回以下错误:
编译错误,错误消息:CS0103:当前上下文中不存在名称“ViewData”
应使用
ViewData[“某些键”]
设置和调用ViewData,而不是ViewData(“某些键”)
。这是因为ViewData本质上是一个字典,而不是ControllerBase
类上的一个方法
请参阅此处以了解。这将不起作用,因为您正在重定向另一个视图/操作,而该视图/操作将无法访问此ViewData
如果要执行此操作,请渲染局部视图。非常感谢,在从vb.net来回切换到c#的过程中,我最终忽略了这一点。在这种情况下,它确实有效,因为Umbraco core会重新添加ViewData中保留的任何对象。