当前位置: 首页>>代码示例>>C#>>正文


C# IRequest.SaveSession方法代码示例

本文整理汇总了C#中IRequest.SaveSession方法的典型用法代码示例。如果您正苦于以下问题:C# IRequest.SaveSession方法的具体用法?C# IRequest.SaveSession怎么用?C# IRequest.SaveSession使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IRequest的用法示例。


在下文中一共展示了IRequest.SaveSession方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: HasAnyRoles

        public bool HasAnyRoles(IRequest req, IAuthSession session, IAuthRepository userAuthRepo = null)
        {
            if (HasAnyRoles(session)) return true;

            session.UpdateFromUserAuthRepo(req, userAuthRepo);

            if (HasAnyRoles(session))
            {
                req.SaveSession(session);
                return true;
            }
            return false;
        }
开发者ID:nunopimenta,项目名称:ServiceStack,代码行数:13,代码来源:RequiresAnyRoleAttribute.cs

示例2: HasWebSudo

        public bool HasWebSudo(IRequest req, IWebSudoAuthSession session)
        {
            if (session?.AuthenticatedWebSudoUntil == null)
                return false;

            var now = DateTime.UtcNow;
            if (now < session.AuthenticatedWebSudoUntil.Value.ToUniversalTime())
                return true;

            session.AuthenticatedWebSudoUntil = null;
            req.SaveSession(session);
            return false;
        }
开发者ID:AVee,项目名称:ServiceStack,代码行数:13,代码来源:WebSudoRequiredAttribute.cs

示例3: HasAllPermissions

        public bool HasAllPermissions(IRequest req, IAuthSession session, IAuthRepository authRepo)
        {
            if (HasAllPermissions(session, authRepo)) return true;

            session.UpdateFromUserAuthRepo(req, authRepo);

            if (HasAllPermissions(session, authRepo))
            {
                req.SaveSession(session);
                return true;
            }
            return false;
        }
开发者ID:AVee,项目名称:ServiceStack,代码行数:13,代码来源:RequiredPermissionAttribute.cs

示例4: OnRequestEnd

        private void OnRequestEnd(IRequest request, IResponse response, object dto)
        {
            if (!request.Items.ContainsKey(SessionCopyRequestItemKey)) return;
            var copy = request.Items[SessionCopyRequestItemKey] as IWebSudoAuthSession;
            if (copy == null) return;

            var session = request.GetSession();
            if (!session.IsAuthenticated)
            {
                // if the credential check failed, restore the session to it's prior, valid state.
                // this enures that a logged in user, remains logged in, but not elevated if the check failed.
                session.PopulateWith(copy);
            }

            request.SaveSession(session);
        }
开发者ID:CLupica,项目名称:ServiceStack,代码行数:16,代码来源:WebSudoFeature.cs

示例5: HasAllPermissions

        public bool HasAllPermissions(IRequest req, IAuthSession session, IAuthRepository userAuthRepo=null)
        {
            if (HasAllPermissions(session)) return true;

            if (userAuthRepo == null) 
                userAuthRepo = req.TryResolve<IAuthRepository>();

            if (userAuthRepo == null) return false;

            var userAuth = userAuthRepo.GetUserAuth(session, null);
            session.UpdateSession(userAuth);

            if (HasAllPermissions(session))
            {
                req.SaveSession(session);
                return true;
            }
            return false;
        }
开发者ID:nustack,项目名称:ServiceStack,代码行数:19,代码来源:RequiredPermissionAttribute.cs

示例6: HasAnyPermissions

        public bool HasAnyPermissions(IRequest req, IAuthSession session, IAuthRepository authRepo)
        {
            if (HasAnyPermissions(session, authRepo)) return true;

            if (authRepo == null)
                authRepo = HostContext.AppHost.GetAuthRepository(req);

            if (authRepo == null)
                return false;

            using (authRepo as IDisposable)
            {
                var userAuth = authRepo.GetUserAuth(session, null);
                session.UpdateSession(userAuth);

                if (HasAnyPermissions(session, authRepo))
                {
                    req.SaveSession(session);
                    return true;
                }
                return false;
            }
        }
开发者ID:AVee,项目名称:ServiceStack,代码行数:23,代码来源:RequiresAnyPermission.cs


注:本文中的IRequest.SaveSession方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。