/// <summary>
 /// 将微信返回的JSON属性映射到<see cref="ClaimsPrincipal"/>
 /// 默认值:
 /// ClaimTypes.Name : openid
 /// ClaimTypes.NameIdentifier : openid。
 /// 这里假设我们已绑定开发者账号,微信返回的JSON含有unionid属性。
 /// </summary>
 /// <param name="claimActions"></param>
 private void MapWeChatJsonKey(ClaimActionCollection claimActions)
 {
     claimActions.Clear();
     claimActions.MapJsonKey(ClaimTypes.Name, "unionid");
     claimActions.MapJsonKey(ClaimTypes.NameIdentifier, "unionid");
     claimActions.MapJsonKey(WeChatClaimTypes.UnionId, "unionid");
     claimActions.MapJsonKey(WeChatClaimTypes.OpenId, "openid");
 }
示例#2
0
        /// <summary>
        /// Clears any current ClaimsActions and maps all values from the json user data as claims, excluding duplicates.
        /// </summary>
        /// <param name="collection">The <see cref="ClaimActionCollection"/>.</param>
        public static void MapAll(this ClaimActionCollection collection)
        {
            if (collection == null)
            {
                throw new ArgumentNullException(nameof(collection));
            }

            collection.Clear();
            collection.Add(new MapAllClaimsAction());
        }
 /// <summary>
 /// Clears any current ClaimsActions and maps all values from the json user data as claims, excluding duplicates.
 /// </summary>
 /// <param name="collection"></param>
 public static void MapAll(this ClaimActionCollection collection)
 {
     collection.Clear();
     collection.Add(new MapAllClaimsAction());
 }