0

我正在创建这个联系表格,您可以在文档中找到它:http: //our.umbraco.org/documentation/Reference/Mvc/forms

问题是,在我的操作中,我正在向 ViewData 集合添加一些数据,但我无法进入视图。

这是动作:

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>

它将返回此错误:

编译错误,错误消息:CS0103:当前上下文中不存在名称“ViewData”

4

2 回答 2

1

ViewData 应该设置和调用使用ViewData["some key"],而不是ViewData("some key")。这是因为 ViewData 本质上是一个字典,而不是ControllerBase类的方法。

有关其使用的详细说明,请参见此处。

于 2012-12-12T09:05:07.547 回答
0

这将不起作用,因为您正在重定向另一个视图/操作,并且不会访问此 ViewData。

如果你想这样做,渲染一个局部视图。

于 2013-02-12T13:35:06.147 回答