【发布时间】:2014-02-24 21:57:32
【问题描述】:
我希望用户在单击链接时被重定向到注销视图,但是基于某些条件,注销行为是不同的。以下是MVC4中的代码:
[AllowAnonymous]
public ActionResult LogOff()
{
FormsAuthentication.SignOut();
if (<somecondition>)
{
return View();
}
else
{
return Redirect(<someURL>);
}
}
现在,在“FormsAuthentication.SignOut()”之后,如果条件为真,则返回视图不起作用并引发错误。 但是,如果条件为假,则重定向按预期工作。
问题:如果我们退出,View 将无法工作是预期的行为吗?
谢谢。
【问题讨论】:
-
使用
return View();会出现什么错误。 -
错误是“无法使用 [] 将索引应用于 'System.Dynamic.DynamicObject' 类型的表达式”
-
返回视图时是否有可能某种
ViewBag/ViewData对象未初始化? -
不,重定向是在操作结束时,进一步没有任何 ViewBag 或 ViewData 在视图中的引用。
-
也许您可以将完整的堆栈跟踪粘贴到您的问题中并找出它出现在哪一行。
标签: asp.net-mvc-4