2012-10-23 62 views
0

我有一个简单的MVC应用程序 - 的员工,按钮删除列表中的雇员,并且登录屏幕MVC 4 RETURNURL返回404从登录屏幕

当用户按下按钮来删除他们所要求的员工登录

这将它们从EmployeeController带到处理登录的AccountController。 returnUrl也传递给了这个。用户成功通过身份验证,帐户控制器转到重定向到ReturnUrl,这是它抛出404的地方。

returnUrl =/Employees/Delete/127 - 员工的ID。据我所见,这在控制器和RouteConfig中正确配置。

当我删除[授权]属性它工作得很好。所以我怀疑它必须与重定向,但我不明白为什么?

编辑: 我也试过HttpPost在使用FormMethod.Post的观点,但它并没有差异,但在离开登录后,我不知道它的操作系统后或得到 - 或者可以在重定向到返回的网址是生成一个Get而不是一个帖子?

编辑再次:想想这可能不是一个好设计。我要求用户在按下删除按钮后进行授权。我可能不应该暴露删除按钮,除非他们已经授权,但是否可以做?

404 error

Account Controller with redirect

view generating the delete button

employee controller with the Delete action

generated html

route config

回答

2

我想这可能是因为删除操作是HttpPost和重定向你发出GET员工时/删除

0

更改[HttpPost]属性为[HTTPGET。重定向将调用Get方法