/// <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"); }
/// <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()); }