private void Load() { // Check if the classes and properties have ben loaded using (EDBEntities eDB = new EDBEntities()) { foreach (tblTemplateRequirement Rec in (from o in eDB.tblTemplateRequirements where (o.Project_ID == Globals.Project_ID) select o)) { TemplateRequirementModel templateRequirementItem = new TemplateRequirementModel { Project_ID = Rec.Project_ID, Template_ID = Rec.Template_ID, Requirement_ID = Rec.Requirement_ID, RequirementType = Rec.RequirementType, PreFATOk = Rec.PreFATOk, FATOk = Rec.FATOk, FATBy = Rec.FATBy, FATDate = Rec.FATDate, SATOk = Rec.SATOk, SATBy = Rec.SATBy, SATDate = Rec.SATDate, IsChanged = false, IsNew = false, IsDeleted = false, ChildRequirements = new ObservableCollection <TemplateRequirementModel>() }; var requirementItem = RequirementViewModelLocator.GetRequirementVM().GetRequirement(templateRequirementItem.Requirement_ID, null); if (requirementItem != null) { templateRequirementItem.ArticleNo = requirementItem.ArticleNo; templateRequirementItem.ArticleHeader = requirementItem.ArticleHeader; templateRequirementItem.RequirementType_ID = requirementItem.RequirementType_ID; foreach (var childItem in requirementItem.ChildRequirements) { TemplateRequirementModel item = new TemplateRequirementModel { Project_ID = childItem.Project_ID, Template_ID = templateRequirementItem.Template_ID, Requirement_ID = childItem.ID, ArticleNo = childItem.ArticleNo, ArticleHeader = childItem.ArticleHeader, RequirementType = "Requirement", RequirementType_ID = childItem.RequirementType_ID, ChildRequirements = new ObservableCollection <TemplateRequirementModel>() }; templateRequirementItem.ChildRequirements.Add(item); } TemplateRequirements.Add(templateRequirementItem); } } } }
public void AssociateWithTemplate(TreeListViewRow destination) { try { // Associate all selected templates foreach (var templateItem in TemplateViewModelLocator.GetTemplateVM().SelectedItems) { // With all selected requirements (m:n) foreach (var requirementItem in RequirementViewModelLocator.GetRequirementVM().SelectedItems) { TemplateRequirementModel templateRequirementItem = new TemplateRequirementModel { IsNew = true, IsChanged = false, IsDeleted = false, Project_ID = Globals.Project_ID, Template_ID = templateItem.ID, Requirement_ID = requirementItem.ID, RequirementType_ID = requirementItem.RequirementType_ID, ArticleNo = requirementItem.ArticleNo, ArticleHeader = requirementItem.ArticleHeader, //RequirementType = Globals.DraggedItem.Type, ChildRequirements = new ObservableCollection <TemplateRequirementModel>(), }; foreach (var childItem in requirementItem.ChildRequirements) { TemplateRequirementModel templateRequirementChildItem = new TemplateRequirementModel { IsNew = true, IsChanged = false, IsDeleted = false, Project_ID = Globals.Project_ID, Template_ID = templateRequirementItem.Template_ID, Requirement_ID = childItem.ID, RequirementType_ID = childItem.RequirementType_ID, //objectFunctionalityChildItem.FunctionParent_ID = childItem.Parent_ID; ArticleNo = childItem.ArticleNo, ArticleHeader = childItem.ArticleHeader, ChildRequirements = new ObservableCollection <TemplateRequirementModel>() }; templateRequirementItem.ChildRequirements.Add(templateRequirementChildItem); } ; TemplateRequirements.Add(templateRequirementItem); } } } catch (Exception ex) { RadWindow.Alert(ex.Message); } }