public static IdentifierSummary Create(IIdentifierSummary identifierSummary) { if (null == identifierSummary) { throw new ArgumentNullException(nameof(identifierSummary)); } return(new IdentifierSummary(identifierSummary.Identifier, identifierSummary.IdentifierAlias) { IsMaster = identifierSummary.IsMaster }); }
public void AddSecondaryIdentifier(IIdentifierSummary identifierSummary) { if (null == identifierSummary) { throw new ArgumentNullException(nameof(identifierSummary)); } if (!(identifierSummary is IdentifierSummary)) { identifierSummary = IdentifierSummary.Create(identifierSummary); } if (identifierSummary.IsMaster) { throw new InvalidOperationException("identifierSummary.IsMaster"); } var entity = (IdentifierSummary)identifierSummary; //var certificate = FindCertificate(identifierSummary.Identifier, false, false, false); //if (CertificateDegree.Capitaller == certificate.Degree) // entity.IsCapitaller = true; if (Session.AuthenticationService.HasConnectionSettings) { using (var context = new DataContext(Session.AuthenticationService.GetConnectionSettings())) { var identifier = identifierSummary.Identifier; if (context.IdentifierSummaries.Any(e => e.Identifier == identifier)) { return; } context.IdentifierSummaries.Add(entity); context.SaveChanges(); } } else { lock (Anchor) { if (IdentifierSummaries.Any(e => e.Identifier == identifierSummary.Identifier)) { return; } IdentifierSummaries.Add(entity); } } }