using System.Collections.Generic;
using System.Text.Json.Serialization;
public static void Main()
var person1 = new Person()
UserProfiles = new List<UserProfile>()
Identifier = new List<Identifier>()
var person2 = new Person()
UserProfiles = new List<UserProfile>()
Identifier = new List<Identifier>()
var person3 = new Person()
UserProfiles = new List<UserProfile>()
Identifier = new List<Identifier>()
var persons = new List<Person>()
var duplicatePersons = persons.GroupBy(x => x.PersonFacadeId, (key, groupByPersons) =>
var person = groupByPersons.First();
person.UserProfiles = groupByPersons.SelectMany(x => x.UserProfiles).ToList();
Console.WriteLine(JsonSerializer.Serialize(duplicatePersons));
public string PersonFacadeId { get; set; }
public string PersonResourceId { get; set; }
public string HstreamId { get; set; }
public string HealthStreamId { get; set; }
public string GivenName { get; set; }
public string FamilyName { get; set; }
public string EmailAddress { get; set; }
public bool IsEmailAddressConfirmed { get; set; }
public string NrpId { get; set; }
public int? NrpRankId { get; set; }
public int? NrpStatusId { get; set; }
public List<Identifier> Identifier { get; set; }
public List<UserProfile> UserProfiles { get; set; }
public string UserProfileResourceId { get; set; }
public List<Identifier> Identifier { get; set; }
public string System { get; set; }
public string Value { get; set; }