Skip to content

Instantly share code, notes, and snippets.

@Romiko
Created February 10, 2012 03:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save Romiko/1786066 to your computer and use it in GitHub Desktop.
Save Romiko/1786066 to your computer and use it in GitHub Desktop.
Delete Duplicate Referrals based on latest date initiated
private void DeleteLatestDuplicateReferrals(IList<Node<Referral>> duplicateReferrals)
{
var theReferralsToDelete = from r in duplicateReferrals
group r by r.Data.UniqueId
into g
where g.Count() > 1
select new
{
UniqueId = g.Key,
DateIntiated = (from r in g select r.Data.DateInitiatedUtc).Max(),
};
foreach (var referralToDelete in theReferralsToDelete.ToArray())
{
var referral = referralToDelete;
var referralNodeToDelete = duplicateReferrals
.SingleOrDefault(r =>
r.Data.UniqueId == referral.UniqueId && r.Data.DateInitiatedUtc == referral.DateIntiated);
if (referralNodeToDelete != null && referralNodeToDelete.Reference != null)
graphClient.Delete(referralNodeToDelete.Reference, DeleteMode.NodeAndRelationships);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment