/// <summary> /// Active Dependent type names of this object /// </summary> public List <string> DependentObjectNames() { var dependentObjects = new List <string>(); if (ProjectFundingSourceExpenditures.Any()) { dependentObjects.Add(typeof(ProjectFundingSourceExpenditure).Name); } if (ProjectFundingSourceExpenditureUpdates.Any()) { dependentObjects.Add(typeof(ProjectFundingSourceExpenditureUpdate).Name); } if (ProjectNoFundingSourceIdentifieds.Any()) { dependentObjects.Add(typeof(ProjectNoFundingSourceIdentified).Name); } if (ProjectNoFundingSourceIdentifiedUpdates.Any()) { dependentObjects.Add(typeof(ProjectNoFundingSourceIdentifiedUpdate).Name); } if (ProjectRelevantCostTypes.Any()) { dependentObjects.Add(typeof(ProjectRelevantCostType).Name); } if (ProjectRelevantCostTypeUpdates.Any()) { dependentObjects.Add(typeof(ProjectRelevantCostTypeUpdate).Name); } if (BudgetObjectCodesWhereYouAreTheOverrideCostType.Any()) { dependentObjects.Add(typeof(BudgetObjectCode).Name); } if (BudgetObjectCodeGroups.Any()) { dependentObjects.Add(typeof(BudgetObjectCodeGroup).Name); } if (ProjectFundingSourceBudgets.Any()) { dependentObjects.Add(typeof(ProjectFundingSourceBudget).Name); } if (ProjectFundingSourceBudgetUpdates.Any()) { dependentObjects.Add(typeof(ProjectFundingSourceBudgetUpdate).Name); } return(dependentObjects.Distinct().ToList()); }
/// <summary> /// Dependent type names of this entity /// </summary> public void DeleteChildren(DatabaseEntities dbContext) { foreach (var x in ProjectFundingSourceExpenditures.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectFundingSourceExpenditureUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectNoFundingSourceIdentifieds.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectNoFundingSourceIdentifiedUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectRelevantCostTypes.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectRelevantCostTypeUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in BudgetObjectCodesWhereYouAreTheOverrideCostType.ToList()) { x.DeleteFull(dbContext); } foreach (var x in BudgetObjectCodeGroups.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectFundingSourceBudgets.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectFundingSourceBudgetUpdates.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(ProjectFundingSourceExpenditures.Any() || ProjectFundingSourceExpenditureUpdates.Any() || ProjectNoFundingSourceIdentifieds.Any() || ProjectNoFundingSourceIdentifiedUpdates.Any() || ProjectRelevantCostTypes.Any() || ProjectRelevantCostTypeUpdates.Any() || BudgetObjectCodesWhereYouAreTheOverrideCostType.Any() || BudgetObjectCodeGroups.Any() || ProjectFundingSourceBudgets.Any() || ProjectFundingSourceBudgetUpdates.Any()); }