10. april 2006 - 18:50Der er
13 kommentarer og 1 løsning
Info klasse med mange fields ?
Hejsa,
Jeg har en info klasse med mere end 40 fields der ikke alle bruges hele tiden. I et tilfælde bruger jeg 8 i et andet 23 osv. men når jeg så skal lave mine default constructor skal jeg have alle fields representeret hvilket ikke er optimalt, set i lyset af at jeg ikke skal bruge dem alle.
Din formulering antyder lidt at maaske skal du ikke bruge samme klasse til alle objekter ...
Muligheder: - split i uafhaengige klasser hvis de intet har med hinanden at goere - split i faelles basis klasse og sub klasser hvis de delvist har noget med hinanden at goere - behold en eneklt klasse og brug null hvsi det er samme data, bare meget "tyndt" udfyldt
Muligvis skal du traede et skridt tilbage fra koden og kigge lidt paa den virkelighed du forsoeger at modellere - hvordan er sammenhaengen der - og saa forsoege at modellere den i koden
Det har (i min verden) noget med hinanden at gøre, set i lyset af at jeg skal lave noget hvor jeg har flere ens fields, lad mig illustrere :
Public Sub New() MyClass.New(field1, field2, field3) End Sub
Public Sub New() MyClass.New(field1, field2, field3, field4, field5, field6) End Sub
Og så fremdeles, som du kan se har jeg brug for nogle fields flere gange og andre en gang.
Men når jeg tænker lidt over det kan jeg så ikke bare benytte mig 2 constructors en med default values og en med values fra mine fields og så bruge mine fields i min code-behind med følgende :
Dim objInfo As New InfoKlasse() objInfo.field1 = "en value" objInfo.field2 = "en anden value"
Jamen hvis jeg splitter den op i flere får jeg jo blot gentagelser af flere af mine fields hvilket jeg ikke ser nogen grund til at spille tid på, men ret mig hvis jeg tager fejl ?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.