gpt4 book ai didi

c# - Controller 返回当前 View

转载 作者:行者123 更新时间:2023-12-02 05:12:33 26 4
gpt4 key购买 nike

所以这很简单。我有一个调用 Controller 的 View ,该 Controller (取决于 bool 值)将返回一个新 View 。但如果没有,将保留当前 View 。

我该怎么做?

我当前的 Controller 代码是这样的:

public class MyController : Controller
{
public ActionResult someView(bool myBool) // is really a string
{
if (myBool) // Is really checking if the string is empty
{
ModelState.AddModelError("message", "This is true");
}
else
{
return View();
}
return null;
}
}

我知道我需要了解更多有关 mvc4 的知识,但请一起玩;-D

<小时/>

编辑献给我的天鹰队长^^

_Partial 页面代码:(感谢 John H)

@using (Html.BeginForm("someView", "My", FormMethod.Get))
{
@Html.TextBox("text")
<input type="submit" value='send' />
}

但我的问题的真正目标是找到一种方法返回调用它的View。希望没有模型你这将是正确的方式^^

最佳答案

返回 null 没有任何意义。这本质上是说“不返回任何 View ”。像这样的事情会起作用:

public class MyController : Controller
{
public ActionResult SomeView(bool myBool)
{
if (myBool)
{
ModelState.AddModelError("message", "This is true");
return View();
}

return RedirectToAction("SomeOtherView");
}
}

这与我在其他问题中提到的 ModelState.IsValid 模式很接近(如下所示:

public ActionResult SomeView(SomeViewModel model)
{
if (ModelState.IsValid)
{
// Model is valid so redirect to another action
// to indicate success.
return RedirectToAction("Success");
}

// This redisplays the form with any errors in the ModelState
// collection that have been added by the model binder.
return View(model);
}

关于c# - Controller 返回当前 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19846603/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com