如果未提交其他操作的形式,则禁止访问页面
本文关键字:禁止 访问 提交 其他 操作 如果 | 更新日期: 2023-09-27 18:31:27
我正在尝试在我的 ASP.NET MVC应用程序中创建一个注册。注册分为不同的区域。
首先,我将进入"创建"页面。如果"创建"中的表单已成功填写并且我提交了,则我想转到具有另一个表单的帐户信息。
[HttpGet]
public ActionResult Create()
{
return View("Create");
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(Account account)
{
if(ModelState.IsValid)
{
using (db)
{
return RedirectToAction("AccountInfo", new { account = account });
}
}
return View();
}
public ActionResult AccountInfo(Account account)
{
db.Accounts.Add(account);
db.SaveChanges();
return View();
}
如果未填写Create
中的表单,如何禁止AccountInfo
访问?
好吧,您关心的只是填写帐户,因此您真的不必担心是否有人直接访问AccountInfo。 如果他们这样做,他们将没有有效的帐户对象。 如果帐户对象无效,则只需将它们重定向回"创建"。
检查第一个表单中的所有参数是否"有效",并在到达第二个表单时填写。您还可以检查呼叫是否来自该页面。只需检查 http 请求对象即可找到正确的信息。
这是我所指的对象:http://msdn.microsoft.com/en-us/library/system.web.httprequest%28v=vs.110%29.aspx