/// <summary> /// Active Dependent type names of this object /// </summary> public List <string> DependentObjectNames() { var dependentObjects = new List <string>(); if (PerformanceMeasureActualUpdates.Any()) { dependentObjects.Add(typeof(PerformanceMeasureActualUpdate).Name); } if (ProjectCustomAttributeUpdates.Any()) { dependentObjects.Add(typeof(ProjectCustomAttributeUpdate).Name); } if (ProjectDocumentUpdates.Any()) { dependentObjects.Add(typeof(ProjectDocumentUpdate).Name); } if (ProjectExemptReportingYearUpdates.Any()) { dependentObjects.Add(typeof(ProjectExemptReportingYearUpdate).Name); } if (ProjectExternalLinkUpdates.Any()) { dependentObjects.Add(typeof(ProjectExternalLinkUpdate).Name); } if (ProjectFundingSourceUpdates.Any()) { dependentObjects.Add(typeof(ProjectFundingSourceUpdate).Name); } if (ProjectGrantAllocationExpenditureUpdates.Any()) { dependentObjects.Add(typeof(ProjectGrantAllocationExpenditureUpdate).Name); } if (ProjectGrantAllocationRequestUpdates.Any()) { dependentObjects.Add(typeof(ProjectGrantAllocationRequestUpdate).Name); } if (ProjectImageUpdates.Any()) { dependentObjects.Add(typeof(ProjectImageUpdate).Name); } if (ProjectLocationStagingUpdates.Any()) { dependentObjects.Add(typeof(ProjectLocationStagingUpdate).Name); } if (ProjectLocationUpdates.Any()) { dependentObjects.Add(typeof(ProjectLocationUpdate).Name); } if (ProjectNoteUpdates.Any()) { dependentObjects.Add(typeof(ProjectNoteUpdate).Name); } if (ProjectOrganizationUpdates.Any()) { dependentObjects.Add(typeof(ProjectOrganizationUpdate).Name); } if (ProjectPersonUpdates.Any()) { dependentObjects.Add(typeof(ProjectPersonUpdate).Name); } if (ProjectPriorityLandscapeUpdates.Any()) { dependentObjects.Add(typeof(ProjectPriorityLandscapeUpdate).Name); } if (ProjectRegionUpdates.Any()) { dependentObjects.Add(typeof(ProjectRegionUpdate).Name); } if ((ProjectUpdate != null)) { dependentObjects.Add(typeof(ProjectUpdate).Name); } if (ProjectUpdateHistories.Any()) { dependentObjects.Add(typeof(ProjectUpdateHistory).Name); } return(dependentObjects.Distinct().ToList()); }
/// <summary> /// Dependent type names of this entity /// </summary> public void DeleteChildren(DatabaseEntities dbContext) { foreach (var x in PerformanceMeasureActualUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectCustomAttributeUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectDocumentUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectExemptReportingYearUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectExternalLinkUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectFundingSourceUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectGrantAllocationExpenditureUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectGrantAllocationRequestUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectImageUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectLocationStagingUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectLocationUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectNoteUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectOrganizationUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectPersonUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectPriorityLandscapeUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectRegionUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectUpdateHistories.ToList()) { x.DeleteFull(dbContext); } }
/// <summary> /// Does this object have any dependent objects? (If it does have dependent objects, these would need to be deleted before this object could be deleted.) /// </summary> /// <returns></returns> public bool HasDependentObjects() { return(PerformanceMeasureActualUpdates.Any() || ProjectCustomAttributeUpdates.Any() || ProjectDocumentUpdates.Any() || ProjectExemptReportingYearUpdates.Any() || ProjectExternalLinkUpdates.Any() || ProjectFundingSourceUpdates.Any() || ProjectGrantAllocationExpenditureUpdates.Any() || ProjectGrantAllocationRequestUpdates.Any() || ProjectImageUpdates.Any() || ProjectLocationStagingUpdates.Any() || ProjectLocationUpdates.Any() || ProjectNoteUpdates.Any() || ProjectOrganizationUpdates.Any() || ProjectPersonUpdates.Any() || ProjectPriorityLandscapeUpdates.Any() || ProjectRegionUpdates.Any() || (ProjectUpdate != null) || ProjectUpdateHistories.Any()); }