2017-03-17 24 views
0

我正在构建一项调查,其中客户通过与数据库相关的ID发送直接链接,以便我们可以知道客户是谁,而无需填写他们的个人信息。由于该行在数据库中已预先创建,并且只需要进行编辑以填写问题,所以我将其从编辑脚手架中取出。ASP.NET MVC禁止在访问表单后访问

为了清楚起见,网址是mydomain.com/controller/action/id - >其中id是包含调查答案的行的PK。

我面临的问题是,如果他们再次访问直接链接,他们可以根据需要多次编辑调查。我想这样做,所以一旦它被提交链接导致页面,说“调查已提交”

回答

0

你有几个选择在你面前。实际上,如果调查已提交,您希望停用调查。

两个解决方案,我能想到的是:

  1. 如果调查已经填写,不要让他们对其进行编辑。
  2. 如果您希望用户能够在提交调查之前编辑调查,请提供“已提交的”日期字段。如果填写了该字段,则调查已完成并且无法编辑。
1

添加一个布尔列的行,并在第一次调查提交时设置为true。在加载调查的方法中,在返回视图之前检查此列的值。如果该值为true,则重定向到另一个控制器操作,该操作将用户下载到“已提交的调查”页面。