Esempio n. 1
0
        public DataStructurePreviewModel fill(long dataStructureId)
        {
            if (dataStructureId > 0)
            {
                DataStructureManager dataStructureManager = null;
                try
                {
                    dataStructureManager = new DataStructureManager();
                    if (dataStructureManager.StructuredDataStructureRepo.Get(dataStructureId) != null)
                    {
                        StructuredDataStructure dataStructure = dataStructureManager.StructuredDataStructureRepo.Get(dataStructureId);
                        VariablePreviewStruct   variablePreview;

                        this.Id          = dataStructure.Id;
                        this.Name        = dataStructure.Name;
                        this.Description = dataStructure.Description;

                        if (dataStructure.Datasets.Count > 0)
                        {
                            this.inUse = true;
                        }

                        foreach (Variable v in DataStructureIO.getOrderedVariables(dataStructure))
                        {
                            variablePreview = new VariablePreviewStruct().fill(v);
                            this.VariablePreviews.Add(variablePreview);
                        }
                    }
                    else if (dataStructureManager.UnStructuredDataStructureRepo.Get(dataStructureId) != null)
                    {
                        UnStructuredDataStructure dataStructure = dataStructureManager.UnStructuredDataStructureRepo.Get(dataStructureId);

                        this.Id               = dataStructure.Id;
                        this.Name             = dataStructure.Name;
                        this.Description      = dataStructure.Description;
                        this.VariablePreviews = null;

                        if (dataStructure.Datasets.Count > 0)
                        {
                            this.inUse = true;
                        }
                    }
                    return(this);
                }
                finally
                {
                    dataStructureManager.Dispose();
                }
            }
            else
            {
                return(new DataStructurePreviewModel());
            }
        }
Esempio n. 2
0
        public DataStructurePreviewModel fill(long dataStructureId)
        {
            if (dataStructureId > 0)
            {
                DataStructureManager dataStructureManager = null;
                try
                {
                    dataStructureManager = new DataStructureManager();
                    if (dataStructureManager.StructuredDataStructureRepo.Get(dataStructureId) != null)
                    {
                        StructuredDataStructure dataStructure = dataStructureManager.StructuredDataStructureRepo.Get(dataStructureId);
                        VariablePreviewStruct   variablePreview;

                        this.Id          = dataStructure.Id;
                        this.Name        = dataStructure.Name;
                        this.Description = dataStructure.Description;

                        if (dataStructure.Datasets.Any())
                        {
                            DatasetManager datasetManager = null;
                            try
                            {
                                datasetManager = new DatasetManager();
                                foreach (Dataset d in dataStructure.Datasets)
                                {
                                    if (datasetManager.RowAny(d.Id))
                                    {
                                        this.inUse = true;
                                        break;
                                    }
                                    else
                                    {
                                        foreach (DatasetVersion dv in d.Versions)
                                        {
                                            if (datasetManager.GetDatasetVersionEffectiveTuples(dv).Any())
                                            {
                                                this.inUse = true;
                                                break;
                                            }
                                        }
                                    }
                                }
                            }
                            finally
                            {
                                datasetManager.Dispose();
                            }
                        }

                        foreach (Variable v in DataStructureIO.getOrderedVariables(dataStructure))
                        {
                            variablePreview = new VariablePreviewStruct().fill(v);
                            this.VariablePreviews.Add(variablePreview);
                        }
                    }
                    else if (dataStructureManager.UnStructuredDataStructureRepo.Get(dataStructureId) != null)
                    {
                        UnStructuredDataStructure dataStructure = dataStructureManager.UnStructuredDataStructureRepo.Get(dataStructureId);

                        this.Id               = dataStructure.Id;
                        this.Name             = dataStructure.Name;
                        this.Description      = dataStructure.Description;
                        this.VariablePreviews = null;

                        if (dataStructure.Datasets.Any())
                        {
                            this.inUse = true;
                        }
                    }
                    return(this);
                }
                finally
                {
                    dataStructureManager.Dispose();
                }
            }
            else
            {
                return(new DataStructurePreviewModel());
            }
        }