public void DeleteFromRepository(SecurityGroupType itemType) { if (_repositoryContext.GetEntityDescriptor(itemType) != null) {//if it exists in the db delete it from the db SecurityGroupEntities context = new SecurityGroupEntities(_rootUri); context.MergeOption = MergeOption.AppendOnly; context.IgnoreResourceNotFoundException = true; SecurityGroupType deletedSecurityGroupType = (from q in context.SecurityGroupTypes where q.SecurityGroupTypeID == itemType.SecurityGroupTypeID select q).FirstOrDefault(); if (deletedSecurityGroupType != null) { context.DeleteObject(deletedSecurityGroupType); context.SaveChanges(); } context = null; _repositoryContext.MergeOption = MergeOption.AppendOnly; //if it is being tracked remove it... if (GetSecurityGroupTypeEntityState(itemType) != EntityStates.Detached) { _repositoryContext.Detach(itemType); } } }
public void CommitRepository() { _repositoryContext.MergeOption = MergeOption.AppendOnly; _repositoryContext.SaveChanges(); }