示例#1
0
        /// <summary>
        /// Convert from View to Claim Identity
        /// </summary>
        /// <param name="ClaimIdentity">Claim Identity View</param>
        /// <returns>Instance of System.Security.Claims.ClaimsIdentity</returns>
        public static ClaimsIdentity ConvertToClaimsIdentity(this ClaimIdentityView ClaimIdentity)
        {
            string         authenticationType = EnumStringValue.GetStringValue(ClaimIdentity.AuthenticationType);
            ClaimsIdentity identity           = new ClaimsIdentity(authenticationType, UserNameClaimType, RoleClaimType);

            foreach (ClaimView item in ClaimIdentity.ClaimViewList)
            {
                identity.AddClaim(new Claim(item.Type, item.Value, item.ValueType));
            }

            return(identity);
        }
        public static ClaimIdentityView ConvertToClaimIdentityView(this ClaimsIdentity Identity)
        {
            ClaimIdentityView result = new ClaimIdentityView()
            {
                Name = Identity.Name,
                NameClaimType = Identity.NameClaimType,
                AuthenticationType = (AuthenticationTypeEnum)EnumStringValue.Parse(typeof(AuthenticationTypeEnum), Identity.AuthenticationType),
                RoleClaimType = Identity.RoleClaimType
            };

            foreach (Claim item in Identity.Claims)
                result.ClaimViewList.Add(item.ConvertToClaimView());

            return result;
        }
        public static ClaimIdentityView ConvertToClaimIdentityView(this ClaimsIdentity Identity)
        {
            ClaimIdentityView result = new ClaimIdentityView()
            {
                Name               = Identity.Name,
                NameClaimType      = Identity.NameClaimType,
                AuthenticationType = (AuthenticationTypeEnum)EnumStringValue.Parse(typeof(AuthenticationTypeEnum), Identity.AuthenticationType),
                RoleClaimType      = Identity.RoleClaimType
            };

            foreach (Claim item in Identity.Claims)
            {
                result.ClaimViewList.Add(item.ConvertToClaimView());
            }

            return(result);
        }