» »

[C#] stack overflow?

[C#] stack overflow?

pinc ::

private void Page_Load(object sender, System.EventArgs e)
		{
			OleDbConnection conn = null;
			OleDbDataReader reader = null;

			conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; " + "Data Source=" + Server.MapPath("menu.mdb"));
			conn.Open();

			OleDbCommand cmd = new OleDbCommand("SELECT * FROM MenuItems ORDER BY ParentId, ID ", conn);
			reader = cmd.ExecuteReader();
			try 
			{ 
//your code
				while(reader.Read()) 
				{

					if(reader["ParentId"].ToString().Equals("-1")) 
					{
						myMenu.AddParent("p" + reader["ID"].ToString(), reader["Title"].ToString());
					}
					else
					{
						myMenu.AddChildAt("c" + reader["ID"].ToString(), "p" + reader["ParentId"].ToString(), reader["Title"].ToString(), 
							null, null, null);

					}
				}

			} 
				//this will fire when you get your overflow
			catch
				(System.StackOverflowException overFlowExcept) 
			{
				Response.Write(overFlowExcept. Message);
				return;
			}
			
				
		
		
        
			reader.Close();
			conn.Close();
		}

v vrstici myMenu.AddChildAt("c" + reader["ID"].ToString.... mi javi debuger napako in sicer Exception of type System.StackOverflowException was thrown.
Kaj bi lahko blo narobe?
To je v bistvu koda iz strani:
http://www.obout.com/sm3/tutorial_db.aspx

pomoč?

p.s.: je anslov teme ok? ;(

[edit - ne ni! lahko bi si prebral eno temo, ki ji rečemo PREBERI ME - vsc]
  • spremenil: Vesoljc ()

darkolord ::

A si probal debuggat vrstico po vrstico pa da vidiš kje se ustavi (zacikla?) ?

NavadniNimda ::

@PINC - preveri približno kolikokrat se izvede zanka.
Taka menujska struktura ne more imeti zelo velikih dimenzij
(recimo nekaj sto ali nekaj tisoč zapisov je že veliko)!!:D

Zgodovina sprememb…



Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

C# težava

Oddelek: Programiranje
233715 (2561) mladec
»

C# OleDB create database

Oddelek: Programiranje
71304 (1136) DubleG
»

razložitev nekaterij elementov v visual studio 05

Oddelek: Programiranje
72106 (1911) darkolord
»

problem v C#

Oddelek: Programiranje
211969 (1684) dvojka
»

branje byte[] iz MS access-ove baze

Oddelek: Programiranje
81936 (1846) BHawk

Več podobnih tem