Htmltextwriter stackoverflow exception
Hallo,
Ich versuche gerade ein ASP.NET Servercontrol zu programmieren. Jedoch bekomme ich einen Speicherüberlauf. Hier mal der Code
So, und in Zeile 122 Tritt der Fehler auf, das ist die Funktion RenderContentsX bei writer.Write("<li class=""" & Me.SublevelCssClass & """>") und beim Kopieren der Details der Exception bekomme ich folgendes
Ich würde mich echt über schnelle Hilfe freuen, ich brüte schon die ganzen letzten Tage über diesen Problem. Ich verstehe auch nicht wie der htmltextwriter den Stack voll müllt Bekomme auch wen ich die normalen HTML Textwriter dinger Benutze folgendes Resultat:
Wo bei 10 für "class" steht (htmltextwriterAttribute.class) und im Quelltext kommt der Text dann auch schön vor den eigentlichen Tag was mich schon irritert. Hatte erst die Attribute und dann die Tags geschrieben (writeAtributte und renderBeginTag und klar am ende renderEndTag)
Ich bin gerade echt schon total am verzweifeln
Gruß an die IT-Welt,
J Herbrich
Ich versuche gerade ein ASP.NET Servercontrol zu programmieren. Jedoch bekomme ich einen Speicherüberlauf. Hier mal der Code
Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
Me.RenderBeginTag(writer)
Me.RenderContents(writer)
Me.RenderEndTag(writer)
End Sub
Protected Overrides Sub RenderContents(ByVal writer As HtmlTextWriter)
writer.WriteLine("<ul>")
For Each item As KarowNavigatorItem In Me.NavItems
If (Me.SublevelCssClass IsNot String.Empty AndAlso item.ChildItems.Count > 0) Then
writer.Write("<li class=""" & Me.SublevelCssClass & """>") ' Happy Styckoverflow -.-
Else
writer.Write("<li>")
End If
writer.Write("<a href=""" & item.NavigateUrl & """>" & item.Text & "</a>")
If (item.ChildItems > 0) Then
For Each child As KarowNavigatorItem In item.ChildItems
Me.RenderContentsX(child, writer)
Next
End If
writer.WriteLine("</li>")
Next
'Me.RenderItems(writer, Me.NavItems, True)
writer.WriteLine("</ul>")
End Sub
Protected Sub RenderContentsX(ByVal node As KarowNavigatorItem, ByVal writer As HtmlTextWriter)
'Dim hasChildren As Boolean = ()
If (Not Me.LayerCSS = Nothing) Then
writer.Write("<ul class=""" & Me.LayerCSS & """>")
Else
writer.Write("<ul>")
End If
If (Me.NavItems > 0) Then
For Each item As KarowNavigatorItem In Me.NavItems
If (Me.SublevelCssClass IsNot String.Empty AndAlso item.ChildItems.Count > 0) Then
writer.Write("<li class=""" & Me.SublevelCssClass & """>")
Else
writer.Write("<li>")
End If
writer.Write("<a href=""" & item.NavigateUrl & """>" & item.Text & "</a>")
If (item.ChildItems.Count > 0) Then
For Each child As KarowNavigatorItem In item.ChildItems
Me.RenderContentsX(child, writer)
Next
End If
writer.WriteLine("</li>")
Next
End If
writer.WriteLine("</ul>")
'Me.RenderItems(writer, Me.NavItems, True)
End Sub
Public Overrides Sub RenderBeginTag(writer As HtmlTextWriter)
writer.BeginRender()
writer.WriteLine("<!--AnneKarow-->")
If (Me.CssClass IsNot String.Empty) Then
writer.WriteLine("<nav class=""" & Me.CssClass & """/>")
Else
writer.WriteLine("<nav>")
End If
End Sub
Public Overrides Sub RenderEndTag(writer As HtmlTextWriter)
writer.WriteLine("<!--AnneKarow-->")
writer.WriteLine("</nav>")
writer.EndRender()
End Sub
So, und in Zeile 122 Tritt der Fehler auf, das ist die Funktion RenderContentsX bei writer.Write("<li class=""" & Me.SublevelCssClass & """>") und beim Kopieren der Details der Exception bekomme ich folgendes
System.StackOverflowException ist aufgetreten.
HResult=0x800703E9
Ich würde mich echt über schnelle Hilfe freuen, ich brüte schon die ganzen letzten Tage über diesen Problem. Ich verstehe auch nicht wie der htmltextwriter den Stack voll müllt Bekomme auch wen ich die normalen HTML Textwriter dinger Benutze folgendes Resultat:
10="uke_menu"
Wo bei 10 für "class" steht (htmltextwriterAttribute.class) und im Quelltext kommt der Text dann auch schön vor den eigentlichen Tag was mich schon irritert. Hatte erst die Attribute und dann die Tags geschrieben (writeAtributte und renderBeginTag und klar am ende renderEndTag)
Ich bin gerade echt schon total am verzweifeln
Gruß an die IT-Welt,
J Herbrich
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 342273
Url: https://administrator.de/contentid/342273
Ausgedruckt am: 25.11.2024 um 21:11 Uhr
3 Kommentare
Neuester Kommentar