我当前的动作如下:
[HttpPost]
public void AddMessage([FromBody] ShoutboxMessage input)
{
if (!string.IsNullOrWhiteSpace(input.Message) && Request.Cookies["usrid"] != null)
{
input.SbUserId = int.Parse(Request.Cookies["usrid"]);
input.Timestamp = DateTime.UtcNow;
context.ShoutboxMessages.Add(input);
context.SaveChanges();
}
}
我只想这样做:
[HttpPost]
public void AddMessage([FromBody] ShoutboxMessage input)
{
if (Request.Cookies["usrid"] == null)
RedirectToAction("Login");
if (!string.IsNullOrWhiteSpace(input.Message))
{
//...
}
}
但这显然不起作用。有没有办法从应该返回void的动作重定向?或者相反,应该返回ActionResult
的Action是否不会导致当前页面的任何重定向或重新加载?
编辑:“重复”与此无关。可能是void
动作返回的内容与EmptyResult
动作基本相同,但这不是这里的主题,基本上我想知道如何在EmptyResult
和{{ 1}}。
答案 0 :(得分:1)
像这样?您随时可以从Action返回String output = a.replaceAll(",\\s*\n", "\n");
。
EmptyResult()