コード例 #1
0
        /// <summary>
        /// 判断Builder是否相等
        /// </summary>
        /// <param name="other"></param>
        /// <returns></returns>
        public override bool Equals(DataPermissionConstraintBuilder other)
        {
            if (other == null)
            {
                return(false);
            }
            CurrentUserPermissionConstraintBuilder compareBuilder = other as CurrentUserPermissionConstraintBuilder;

            if (compareBuilder == null)
            {
                return(false);
            }
            return(this.UserIdProperty.Equals(compareBuilder.UserIdProperty));
        }
コード例 #2
0
        /// <summary>
        /// 判断Builder是否相等
        /// </summary>
        /// <param name="other"></param>
        /// <returns></returns>
        public override bool Equals(DataPermissionConstraintBuilder other)
        {
            if (other == null)
            {
                return(false);
            }
            CurrentGroupPermissionConstraintBuilder compareBuilder = other as CurrentGroupPermissionConstraintBuilder;

            if (compareBuilder == null)
            {
                return(false);
            }
            return(this.IsIncludeChildGroup.Equals(compareBuilder.IsIncludeChildGroup) && this.GroupIdProperty.Equals(compareBuilder.GroupIdProperty));
        }
コード例 #3
0
ファイル: DataPermission.cs プロジェクト: zhuwansu/Rafy
        /// <summary>
        /// 设置权限过滤builder
        /// </summary>
        /// <param name="buider"></param>
        public DataPermission SetBuilder(DataPermissionConstraintBuilder buider)
        {
            var buiderType = buider.GetType();

            this.DataPermissionConstraintBuilderType = $"{buiderType.FullName},{buiderType.Assembly.GetName().Name}";
            PropertyInfo[] propertyInfos = buiderType.GetProperties();
            Dictionary <string, object> builderPropertyDictionary = new Dictionary <string, object>();

            foreach (var prop in propertyInfos)
            {
                if (prop.CanRead)
                {
                    builderPropertyDictionary.Add(prop.Name, prop.GetValue(buider));
                }
            }
            this.BuilderProperties = JsonConvert.SerializeObject(builderPropertyDictionary);
            return(this);
        }