0

我在一个网站上工作,我在我的网站上有一个注册视图,在按下注册按钮时,我正在点击一个 ActionMethod,一切正常,问题是在成功注册后,如果用户在显示的 URL 上按 Enter 键找不到资源,我该如何处理?下面是我的控制器代码 ==>

 public ActionResult Join(SignUpModel model)
        {        
                int create = Repository1.Create(UserEntity);
                if (create > 0)//if <= 0 means username already exists
                {
                    int savesetup = Repository2.SaveInfo(model);                                        
                    TempData["SucessMsg"] = "User registered Successfully";
                    return View("Index");
                }
                if (create < 0)
                {
                    TempData["ErrorMessage"] = "Username already exists";
                    return View("Index", model);
                }         

            return RedirectToAction("Index", "SignUp");
        }

并且注册的视图是索引视图

public ActionResult Index()
        {         
            return View();
        }

由于我没有名为 Join 的视图,而是将其重定向到索引页面,但是当用户在注册/加入 URL 上并按 Enter 时,它显示找不到资源

4

2 回答 2

1

是否ActionResult Join(SignUpModel model)标有 [HttpPost] 属性?如果是这样,那么只有在用户发出 POST 请求时才会调用它(并且自己输入 url 将执行 GET 请求。如果是这种情况,只需添加另一个名为 Join() 的操作方法,而无需 [HttpPost] -attribute 并使用它来将它们重定向到正确的页面(或显示您当然想要的任何信息)。

编辑

阅读您的问题时我有点仓促,并错过了您已经将用户重定向离开ActionResult Join(SignUpModel model)的事实,对此深表歉意。

于 2012-08-30T07:43:44.373 回答
0

您是否检查过是否有一个名为 Index 的视图。

    return RedirectToAction("Index", "SignUp");
    }

    public ActionResult Index()
    {         
        return View();
    }

如果有一个名为Index的View,上面的代码是正确的。返回View()会在MVC中搜索一个与ActionResult同名的View。确保有一个名为 Index 的视图。如果没有名为 index 的视图,它将给出一个错误页面,例如找不到页面。

于 2012-08-30T07:41:48.940 回答