如何从 umbraco mvc 中的表面控制器添加查询字符串以保留模型值

Jay*_*j.K 5 asp.net-mvc umbraco umbraco6

如何从 umbraco mvc 中的表面控制器添加查询字符串。这是我目前的代码。

最初我写了一个代码

public ActionResult Registration(RegisterModel model)
{ 
  //Code to insert register details
  ViewBag.Success="Registered Successfully"
  return CurrentUmbracoPage();
}
Run Code Online (Sandbox Code Playgroud)

有了这个,我可以成功地保留我的 ViewBag 和模型属性值,但我无法用它添加查询字符串。

对于某些要求,我必须更改返回带有查询字符串的 url 的代码。我做了如下

public ActionResult Registration(RegisterModel model)
{ 
    //Code to insert register details
    ViewBag.Success="Registered Successfully"
    pageToRedirect = AppendQueryString("success");
    return new RedirectResult(pageToRedirect);
}
public string AppendQueryString(string queryparam)
{
    var pageToRedirect = new DynamicNode(Node.getCurrentNodeId()).Url;
    pageToRedirect += "?reg=" + queryparam;
    return pageToRedirect;
}
Run Code Online (Sandbox Code Playgroud)

有了这个,我的模型中的属性值无法持久化,并且 ViewBag 返回空值。

任何人都可以建议我如何通过将值保留在模型和 ViewBag 中来添加查询字符串。

Har*_*chu 2

重定向时,ViewBag 中的数据在 View 上将不可用。因此,您必须在 TempData 中添加消息,该消息将在重定向后在视图中可用,例如TempData.Add("CustomMessage", "message");