Exemplo n.º 1
0
        /// <summary>
        /// 前置拦截
        /// </summary>
        /// <param name="invocation">IInvocation</param>
        /// <param name="args">参数</param>
        protected override void PreProceed(IInvocation invocation, params object[] args)
        {
            //日志判断
            if (IsOperateLog)
            {
                ZhuJi.Log.IDAL.ILogging log = new ZhuJi.Log.NHibernateDAL.Logging();
                log.WriteEntry(string.Format("{0} {1}.{2}", "PreProceed", invocation.Method.DeclaringType, invocation.Method.Name));
            }

            //权限判断类
            if (IsPermission)
            {
                ZhuJi.UUMS.IDAL.IPermissionByMethods permission = new ZhuJi.UUMS.NHibernateDAL.PermissionByMethods();
                string className  = invocation.Method.DeclaringType.ToString();
                string methodName = invocation.Method.Name;
                if (permission.CheckClassMethod(className, methodName, GlobalHelper.RolesId))
                {
                    base.PreProceed(invocation, args);
                }
                else
                {
                    throw new Exception("您没有相应权限!");
                }
            }
            else
            {
                base.PreProceed(invocation, args);
            }
        }
        /// <summary>
        /// ǰ������
        /// </summary>
        /// <param name="invocation">IInvocation</param>
        /// <param name="args">����</param>
        protected override void PreProceed(IInvocation invocation, params object[] args)
        {
            //��־�ж�
            if (IsOperateLog)
            {
                ZhuJi.Log.IDAL.ILogging log = new ZhuJi.Log.NHibernateDAL.Logging();
                log.WriteEntry(string.Format("{0} {1}.{2}", "PreProceed", invocation.Method.DeclaringType, invocation.Method.Name));
            }

            //Ȩ���ж���
            if (IsPermission)
            {
                ZhuJi.UUMS.IDAL.IPermissionByMethods permission = new ZhuJi.UUMS.NHibernateDAL.PermissionByMethods();
                string className = invocation.Method.DeclaringType.ToString();
                string methodName = invocation.Method.Name;
                if (permission.CheckClassMethod(className, methodName, GlobalHelper.RolesId))
                {
                    base.PreProceed(invocation, args);
                }
                else
                {
                    throw new Exception("��û����ӦȨ�ޣ�");
                }
            }
            else
            {
                base.PreProceed(invocation, args);
            }
        }