DeleteStructuredDataStructure() public méthode

If non of the entities are associated to any Dateset entity, the method deletes them from the database.
If any of the data structure objects is used by any dataset, the whole transaction will be roll backed, so that the other entities are also not deleted.
Database exceptions are not handled intentionally, so that if the data structure is related to some datasets, a proper exception will be thrown.
public DeleteStructuredDataStructure ( IEnumerable entities ) : bool
entities IEnumerable The data structure objects to be deleted in a all or none approach.
Résultat bool
 public ActionResult deleteDataStructure(long Id, string cssId = "")
 {
     MessageModel DataStructureDeleteValidation = MessageModel.validateDataStructureDelete(Id);
     if (DataStructureDeleteValidation.hasMessage)
     {
         return PartialView("_messageWindow", DataStructureDeleteValidation);
     }
     else
     {
         DataStructureManager dataStructureManager = new DataStructureManager();
         if (dataStructureManager.StructuredDataStructureRepo.Get(Id) != null)
         {
             StructuredDataStructure dataStructure = dataStructureManager.StructuredDataStructureRepo.Get(Id);
             DataStructureIO.deleteTemplate(dataStructure.Id);
             foreach (Variable v in dataStructure.Variables)
             {
                 dataStructureManager.RemoveVariableUsage(v);
             }
             dataStructureManager.DeleteStructuredDataStructure(dataStructure);
             LoggerFactory.LogData(dataStructure.Id.ToString(), typeof(DataStructure).Name, Vaiona.Entities.Logging.CrudState.Deleted);
         }
         else
         {
             UnStructuredDataStructure dataStructure = dataStructureManager.UnStructuredDataStructureRepo.Get(Id);
             dataStructureManager.DeleteUnStructuredDataStructure(dataStructure);
             LoggerFactory.LogData(dataStructure.Id.ToString(), typeof(DataStructure).Name, Vaiona.Entities.Logging.CrudState.Deleted);
         }
         return PartialView("_message", new MessageModel()
         {
             Message = "DataStructure" + Id + "deleted",
             hasMessage = false,
             CssId = "deleted"
         });
     }
 }