首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从AuthorizeAttribute扩展添加到ViewData[]集合

从AuthorizeAttribute扩展添加到ViewData[]集合
EN

Stack Overflow用户
提问于 2010-01-12 05:50:31
回答 1查看 982关注 0票数 2

我编写了一个扩展类来为我的操作方法定制我的AuthorizeAttribute,我希望能够在满足特定条件时将消息注入到我的视图中。我正在使用下面的代码来加载一个共享视图,当一个用户没有被授权,但它没有将我的消息添加到我的ViewData集合中。

代码语言:javascript
运行
复制
public override void OnAuthorization(AuthorizationContext filterContext)
{
    base.OnAuthorization(filterContext);
    if (IsNotAuthorized)
    {
        filterContext.Result = new ViewResult { ViewName = "NotAuthorized" };
        filterContext.Controller.ViewData["Message"] = "Go Away";
    }
}

我还尝试将我的ViewData"Message“集合项设置在调用之上,以更改视图,但没有成功。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-01-12 06:03:08

你试过了吗?

代码语言:javascript
运行
复制
filterContext.Result = new RedirectResult("Home/Index");

我不知道如何添加ViewData,但这至少会让你找到未授权的控制器。

在此期间,我会继续寻找代码添加到视图数据中,或者直到有人发布它。

编辑

这可能会有所帮助;

Changing ActionExecutingContext values in Custom Filter Attribute

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2045200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档