BExIS.Dlm.Services.DataStructure.DataStructureManager.RemoveVariableUsage C# (CSharp) Метод

RemoveVariableUsage() публичный Метод

Detaches the data attribute and the data structure that were linked by the variable and then deletes the variable from the database.
If the variable is referenced by any DataValue the method fails to delete the variable. Also, all the parameters associated to the variable will be deleted.
public RemoveVariableUsage ( Variable usage ) : void
usage BExIS.Dlm.Entities.DataStructure.Variable The variable object to be deleted.
Результат void
        public void RemoveVariableUsage(Variable usage)
        {
            Contract.Requires(usage != null && usage.Id >= 0);

            using (IUnitOfWork uow = this.GetUnitOfWork())
            {
                IRepository<Variable> repo = uow.GetRepository<Variable>();
                IRepository<Parameter> paramRepo = uow.GetRepository<Parameter>();
                repo.Delete(usage);
                paramRepo.Delete(usage.Parameters.ToList());
                uow.Commit();
            }
        }

Usage Example

Пример #1
0
 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"
         });
     }
 }
All Usage Examples Of BExIS.Dlm.Services.DataStructure.DataStructureManager::RemoveVariableUsage