Goeie middag alweer,
Ik ben begonnen aan een class voor een kruimelpad op een website,het princiepe is simpel er wordt 1 struct en 2 arraylists aangemaakt die statische waardes krijgen tijdens laden van de pagina die vervolgens child/parent links kunnen bijhouden zodat er netjes een pad van links bovenaan de pagina gegenereerd kan worden.
Voor het opbouwen zat ik zelf te denken aan het gebruik maken van een singleton aangezien die maar 1 keer statische paginas inlaad en vervolgens dynamische paginas toevoegt aan een lijstje.
Maar hier is mijn probleem, ik heb zelf nog niet echt gewerkt met singletons (dus het kan zijn dat ik helemaal fout zit te denken). Bij singletons wordt een class die wordt aangeroepen toch gevuld met een bestaande class die gelijk is aan zijn eigen type?
Worden daarbij ook meteen dan waardes weggeschreven naar die nieuwe instantie/kloon van die class?
Dat heb ik dusver uit een artikel kunnen halen, maar bij een voorbeeld code die zij gebruikt zag ik iets vreemds wat ook een exceptie veroorzaakte tijdens het debuggen van de website.
In het volgende voorbeeld wordt het class object weggeschreven binnen in de httpcontext object.
Code van de class:
In dit stuk wordt de class aangeroepen
Ik zou dus graag willen weten of ik dit nu helemaal fout aanpak voor het genereren van een kruimelpad en wat ik kan aanpassen om het eventueel werkend te krijgen
Ik ben begonnen aan een class voor een kruimelpad op een website,het princiepe is simpel er wordt 1 struct en 2 arraylists aangemaakt die statische waardes krijgen tijdens laden van de pagina die vervolgens child/parent links kunnen bijhouden zodat er netjes een pad van links bovenaan de pagina gegenereerd kan worden.
Voor het opbouwen zat ik zelf te denken aan het gebruik maken van een singleton aangezien die maar 1 keer statische paginas inlaad en vervolgens dynamische paginas toevoegt aan een lijstje.
Maar hier is mijn probleem, ik heb zelf nog niet echt gewerkt met singletons (dus het kan zijn dat ik helemaal fout zit te denken). Bij singletons wordt een class die wordt aangeroepen toch gevuld met een bestaande class die gelijk is aan zijn eigen type?
Worden daarbij ook meteen dan waardes weggeschreven naar die nieuwe instantie/kloon van die class?
Dat heb ik dusver uit een artikel kunnen halen, maar bij een voorbeeld code die zij gebruikt zag ik iets vreemds wat ook een exceptie veroorzaakte tijdens het debuggen van de website.
In het volgende voorbeeld wordt het class object weggeschreven binnen in de httpcontext object.
Code van de class:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| Imports Microsoft.VisualBasic
Public Class KruimelPad
Private alVisitedLinks As New ArrayList
Private alLinks As New ArrayList
Private Structure sLink
Dim iID As Integer
Dim sLink As String
Dim sOmschrijving As String
End Structure
Private Const SESSION_SINGLETON As String = "SINGLETON"
Private KruimelPad As KruimelPad
Public Function CurrentKruimelPad() As KruimelPad
Dim oSingleton As KruimelPad
If IsDBNull(System.Web.HttpContext.Current.Session(SESSION_SINGLETON)) Then
oSingleton = New KruimelPad
System.Web.HttpContext.Current.Session(SESSION_SINGLETON) = oSingleton
Else
oSingleton = CType(System.Web.HttpContext.Current.Session(SESSION_SINGLETON), KruimelPad)
End If
Return oSingleton
End Function
End Class |
In dit stuk wordt de class aangeroepen
code:
1
2
3
| Dim o_Kruimelpad As KruimelPad o_Kruimelpad = o_Kruimelpad.CurrentKruimelPad 'exceptie treedt hier op "object reference is not set to an instance" |
Ik zou dus graag willen weten of ik dit nu helemaal fout aanpak voor het genereren van een kruimelpad en wat ik kan aanpassen om het eventueel werkend te krijgen