Laste ned presentasjonen
Presentasjon lastes. Vennligst vent
PublisertHilmar Ervik Endret for 9 år siden
1
www.fundator.no GSV – Generic Storage and Validation Hovedprosjekt 2004/2005 Oppgave 10E Trond Smaavik 13.05.05
2
www.fundator.no Slide 2 GSV – Generic Storage and Validation Oppgaven: Lage en generell løsning for lagring av brukerinput fra skjema i web-løsninger til database. Samt en løsning for validering av samme input. Min motivasjon: - Bli bedre kjent med.NET-rammeverket - Lære hvordan inputvaidering kan gjøres effektivt - Se hvordan systemutvikling drives i arbeidslivet - Gjøre erfaringer med systemutvikling alene
3
www.fundator.no Slide 3 GSV – Generic Storage and Validation - Leverer IT-løsninger og utfører konsulenttjenester innen systemutvikling og systemintegrasjon. - Kompetanse innen J2EE,.NET, database, BizTalk, med mer. - 19 konsulenter per mai 2005 Fundator:
4
www.fundator.no Slide 4 GSV – Datalagring Generisk lagring av skjermbilder, kontroller og innhold i kontroller. Gjennfinning av verdier og innfylling i skjermbilder. Enkel referering til lagrede verdier. Egen kontroll for presentasjon i TextBox. Egen kontroll for presentasjon i Label.
5
www.fundator.no Slide 5 GSV – Datamodell
6
www.fundator.no Slide 6 GSV – Gjennomløper aller kontroller i skjermbildet private ArrayList ControlLoop(Control ctrl, ArrayList al) { if(ctrl.Controls.Count > 0) { foreach(Control c in ctrl.Controls) { if(c is CheckBoxList) { al.Add(c); } else { ControlLoop(c, al); } } return al; } else { WebControl wc = ctrl as WebControl; string storable = (wc != null) ? wc.Attributes["storable"] : null; bool store = (storable == null) ? true : !storable.Equals("false"); bool storeOnlyVisible = (wc != null && wc.Visible) ? true : false; if(store && storeOnlyVisible) al.Add(ctrl); return al; } }
7
www.fundator.no Slide 7 GSV – Finner støttede inputkontroller og henter verdi foreach(Control c in controls) { InputControlVO icvo = null; if(c is TextBox) { TextBox txt = c as TextBox; icvo = new InputControlVO(txt.UniqueID, txt.Text); }
8
www.fundator.no Slide 8 GSV – Finner støttede inputkontroller og henter verdi forts if(c is CheckBoxList) { CheckBoxList cbl = c as CheckBoxList; ArrayList al = new ArrayList(); foreach(ListItem li in cbl.Items) { if(li.Selected){ icvo = new InputControlVO(cbl.UniqueID, li.Value); al.Add(ifvo); } } if(formId != 0){ da.DeleteValues(cbl.UniqueID,formId); FormVO f = new FormVO(); f.FormId = formId; f.ControlValues = al; da.InsertValues(f); } else { vos.AddRange(al); } icvo = null; }
9
www.fundator.no Slide 9 GSV – Lagrer kontroller og verdier i databasen public IdsVO StoreData(FormVO form) { string insertStr = "InsertValues"; string updateStr = "UpdateValues"; int suiteId = form.SuiteId; int formId = form.FormId; if(suiteId == 0) suiteId = CreateFormSuite(); if(formId == 0) { form.FormId = CreateForm(suiteId, form.FormTypeId); StoreValues(form, insertStr); } else { StoreValues(form, updateStr); formId = GetNextFormId(suiteId, formId); } return new IdsVO(suiteId, formId, form.FormTypeId); }
10
www.fundator.no Slide 10 GSV – Tilsvarende for gjennfinning av data TextBox txt = c as TextBox; if(txt != null) txt.Text = icvo.ControlValue; CheckBoxList cbl = c as CheckBoxList; if(cbl != null) { foreach(ListItem li in cbl.Items) { if(li.Text.Equals(icvo.ControlValue)) { li.Selected = true; break; } } }
11
www.fundator.no Slide 11 GSV – Validering Valideringskontroller Integrert i Visual Studio Tjener- og klient-sidevalidering Tilbakemelding til bruker Fleksibilitet.NET validatorkontroller RequiredFieldValidator RegularExpressionValidator CustomValidator RangeValidator CompareValidator CheckBoxListValidator PersonnrValidator
12
www.fundator.no Slide 12 GSV – Validering, BaseValidator protected override bool EvaluateIsValid() { int numSel = 0; foreach(ListItem li in _listctrl.Items){ if(li.Selected)numSel++; } if(_maxSelections = _minSelections) return true; } else { if(numSel >= _minSelections && numSel <= _maxSelections) { return true; } } return false; }
Liknende presentasjoner
© 2024 SlidePlayer.no Inc.
All rights reserved.