void CheckForEmptyRecordset() { foreach (var recordset in RecsetCollection.Where(c => c.Children.Count == 0 || (c.Children.Count == 1 && string.IsNullOrEmpty(c.Children[0].Name)) && !string.IsNullOrEmpty(c.Name))) { recordset.SetError(StringResources.ErrorMessageEmptyRecordSet); } }
void CheckForFixedEmptyRecordsets() { foreach (var recset in RecsetCollection.Where(c => c.ErrorMessage == StringResources.ErrorMessageEmptyRecordSet && (c.Children.Count >= 1 && !string.IsNullOrEmpty(c.Children[0].Name)))) { if (recset.ErrorMessage != StringResources.ErrorMessageDuplicateRecordset || recset.ErrorMessage != StringResources.ErrorMessageInvalidChar) { recset.RemoveError(); } } }
public void RemoveBlankRecordsets() { IList <IDataListItemModel> blankList = RecsetCollection.Where(c => c.IsBlank && c.Children.Count == 1 && c.Children[0].IsBlank).ToList(); if (blankList.Count > 1) { RecsetCollection.Remove(blankList.First()); Validator.Remove(blankList.First()); } }
private string GetDataListString() { StringBuilder result = new StringBuilder("<" + RootTag + ">"); foreach (var recSet in RecsetCollection.Where(model => !string.IsNullOrEmpty(model.DisplayName))) { IEnumerable <IDataListItemModel> filledRecordSet = recSet.Children.Where(c => !c.IsBlank && !c.HasError); IList <Dev2Column> cols = filledRecordSet.Select(child => DataListFactory.CreateDev2Column(child.DisplayName, child.Description, child.IsEditable, child.ColumnIODirection)).ToList(); AddItemToBuilder(result, recSet); result.Append(">"); foreach (var col in cols) { result.AppendFormat("<{0} {1}=\"{2}\" {3}=\"{4}\" {5}=\"{6}\" />", col.ColumnName , Description , col.ColumnDescription , IsEditable , col.IsEditable , GlobalConstants.DataListIoColDirection , col.ColumnIODirection); } result.Append("</"); result.Append(recSet.DisplayName); result.Append(">"); } IList <IScalarItemModel> filledScalars = ScalarCollection?.Where(scalar => !scalar.IsBlank && !scalar.HasError).ToList() ?? new List <IScalarItemModel>(); foreach (var scalar in filledScalars) { AddItemToBuilder(result, scalar); result.Append("/>"); } var complexObjectItemModels = ComplexObjectCollection.Where(model => !string.IsNullOrEmpty(model.DisplayName) && !model.HasError); foreach (var complexObjectItemModel in complexObjectItemModels) { _complexObjectHandler.AddComplexObjectsToBuilder(result, complexObjectItemModel); } result.Append("</" + RootTag + ">"); return(result.ToString()); }
private void AddRowToRecordsets() { IList <IDataListItemModel> blankList = RecsetCollection.Where(c => c.IsBlank && c.Children.Count == 1 && c.Children[0].IsBlank).ToList(); if (blankList.Count == 0) { AddRecordSet(); } foreach (IDataListItemModel recset in RecsetCollection) { IList <IDataListItemModel> blankChildList = recset.Children.Where(c => c.IsBlank).ToList(); if (blankChildList.Count == 0) { IDataListItemModel newChild = DataListItemModelFactory.CreateDataListModel(string.Empty); newChild.Parent = recset; recset.Children.Add(newChild); recset.Validator.Add(newChild); } } }
public void RemoveUnusedDataListItems() { var unusedScalars = ScalarCollection.Where(c => c.IsUsed == false).ToList(); if (unusedScalars.Any()) { foreach (var dataListItemModel in unusedScalars) { ScalarCollection.Remove(dataListItemModel); } } var unusedRecordsets = RecsetCollection.Where(c => c.IsUsed == false).ToList(); if (unusedRecordsets.Any()) { foreach (var dataListItemModel in unusedRecordsets) { RecsetCollection.Remove(dataListItemModel); } } foreach (var recset in RecsetCollection) { if (recset.Children.Count > 0) { var unusedRecsetChildren = recset.Children.Where(c => c.IsUsed == false).ToList(); if (unusedRecsetChildren.Any()) { foreach (var unusedRecsetChild in unusedRecsetChildren) { recset.Children.Remove(unusedRecsetChild); } } } } WriteToResourceModel(); EventPublisher.Publish(new UpdateIntellisenseMessage()); }
void ProcessRecordSetPart(IDataListVerifyPart part) { var recsetsToRemove = RecsetCollection.Where(c => c.Name == part.Recordset && c.IsRecordset); recsetsToRemove.ToList().ForEach(recsetToRemove => ProcessFoundRecordSets(part, recsetToRemove)); }