嗨,我在我的 MVC 项目中使用数据库优先方法。当用户单击接受条款时,我有一个操作正在调用存储过程。
在这里,只要我调用此存储过程,它就会在我的表中存储当前日期并使termaccepted字段从 false 变为 true。它工作正常。我有条件,只有当用户接受条款时,他们才能重定向到默认页面。但即使在调用存储过程并更新日期之后,它也不会重定向到默认页面。
我观察到的是,如果我关闭并打开我的解决方案,那么它会获取存储在数据库中的最新值,然后它会重定向到我需要的页面。
那么如何在不重新启动 Visual Studio 的情况下在我的数据库中更新值后立即重定向到页面?
我的行动:
public ActionResult Termspage()
{
TermsEntities updateterms = new TermsEntities();
var ID = Session["userID"];
if (ID != null)
{
updateterms.usp_UpdateUserTerms(Convert.ToInt32(ID), true);
updateterms.SaveChanges();
}
return View();
}
我的观点 :
<body>
<div>
@using (Html.BeginForm("DefaultPage", "Home", FormMethod.Post, new { id = "frmIndex" }))
{
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td>
<input type="submit" value="Accept Terms & Condition" />
</td>
</tr>
</table>
}
</div>
</body>
即使在我的数据库中更新了详细信息后,它也不会重定向到Defaultpage操作。但是当我重新打开我的解决方案时,它会重定向到 Defaultpage。
更新 :
我尝试使用redirecttoAction,但是当我使用它时,我得到这个网页有重定向循环错误