Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MVC确保用户按顺序遍历端点_C#_Asp.net Mvc_Asp.net Mvc 4 - Fatal编程技术网

C# MVC确保用户按顺序遍历端点

C# MVC确保用户按顺序遍历端点,c#,asp.net-mvc,asp.net-mvc-4,C#,Asp.net Mvc,Asp.net Mvc 4,假设我有三个端点 First/foo/bar Second/fizz/buzz Third/whatever 一次只有一个端点有效,从第一个端点开始,然后是第二个端点,依此类推。这是一个问题,如果用户试图返回,或者他们从历史记录中选择了其中一个端点,则会显示一个错误对话框 我想我可以使用SessionState跟踪最近访问的(因此也是有效的)端点,并根据这些信息使用操作过滤器重定向,但我的团队已经禁用了SessionState 那么MVC是否有一种规范的方法来确保用户按顺序导航某些端点呢?MV

假设我有三个端点

First/foo/bar
Second/fizz/buzz
Third/whatever
一次只有一个端点有效,从第一个端点开始,然后是第二个端点,依此类推。这是一个问题,如果用户试图返回,或者他们从历史记录中选择了其中一个端点,则会显示一个错误对话框

我想我可以使用SessionState跟踪最近访问的(因此也是有效的)端点,并根据这些信息使用操作过滤器重定向,但我的团队已经禁用了SessionState


那么MVC是否有一种规范的方法来确保用户按顺序导航某些端点呢?

MVC不提供任何浏览器行为。也就是说,它使用HTTP协议,无法阻止用户在其浏览器中手动键入URL(除非您编写了自己的浏览器来执行此操作)

但是,您可以将应用程序设计为使用JavaScript框架(如JQuery或AngularJS)的单个页面,这样浏览器实际上不会更改URL。这将阻止浏览器跟踪JavaScript代码和服务器之间的交互。然后您可以保证用户只能以正确的顺序查看“页面”