【发布时间】:2009-12-02 15:28:24
【问题描述】:
我有一个 .NET MVC 控制器操作,它将 JsonResult 返回到 YUI AsyncRequest 回调。 AsyncRequest 调用一切正常,“内容”模型数据已成功更新。我现在如何确保在发出 AsyncRequest 之前用户已登录?
通常我会使用 [Authorize] 属性,它会向我的 YUI AsyncRequest 返回一个错误,因为它需要一个 Json 结果。
我也尝试在 Action 中检查“User.Identity.IsAuthenticated”,但仍然没有爱。RedirectToRoute 似乎什么也没做。
我已经能够将指示用户需要登录的 Json 结果发送回 JS,但我宁愿让它将用户重定向到 LogOn 视图。
这是控制器动作:
[JsonFilter(Param="content"), JsonDataType=typeof(Content)]
public ActionResult SaveJson(Content content)
{
if (!User.Identity.IsAuthenticated)
RedirectToRoute(new { Action="LogOn", Controller="Account"});
contentRepository.Update(content);
return Json(new {Result = "sucess"});
}
TIA!
【问题讨论】:
标签: asp.net-mvc json yui