برگزیده های پرشین تولز

exception of type 'System.StackOverflowException'

fivestar

Registered User
تاریخ عضویت
14 نوامبر 2006
نوشته‌ها
73
لایک‌ها
0
وقتی میخواد پروژه را Debug کنه از خطی که SQLDataAdapter رو fill کردم یا از خطی که میخوام GridView رو bind کنم یه خطای عجیب غریب میگیره :


An unhandled exception of type 'System.StackOverflowException' occurred in System.Data.dll

باید چیکار کنم ؟؟؟
 

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
نمونه کدت رو بذار تا بررسی کنیم
 

fivestar

Registered User
تاریخ عضویت
14 نوامبر 2006
نوشته‌ها
73
لایک‌ها
0
صفحه درست لود میشه . Button رو کلیک می کنم اون ارور خوشگله رو میده

این کدButton_Click :

کد:
protected void Button_Click(object sender, EventArgs e)
        {
            string CS = (string)ConfigurationManager.AppSettings["myConnectionString"];
            SqlConnection cnn = new SqlConnection(CS);

string meghdar = Textsearch.Text;
            string find_convert = meghdar.Replace('ی', 'ی');
            string strsql = null;

            switch (DDLL.SelectedIndex)
            {
                case 0:
                    strsql = "select * from DR where FAMILY = @Search ";
                    break;
                case 1:
                    strsql = "select * from DR where ZONEE = @Search ";
                    break;
                case 2:
                    strsql = "select * from DR where PROFICIENCY = @Search ";
                    break;

            }

            SqlDataAdapter adpDR = new SqlDataAdapter(strsql, cnn);

            SqlCommand cmd = new SqlCommand(strsql, cnn);
            cmd.Parameters.Add(new SqlParameter("@Search", SqlDbType.NVarChar));
            cmd.Parameters["@Search"].Value = find_convert;

            adpDR.SelectCommand = cmd;
        
            DataSet DS = new DataSet();
            
            adpDR.Fill(DS, "DR");
            
            GridView.DataSource = DS.Tables["DR"];
            GridView.DataBind();
            
                 }


تو MSDN در مورد این خطا میگه :


Make sure you do not have an infinite loop or infinite recursion.
Too many method calls is often indicative of a very deep or unbounded recursion


چی کار کنم ؟؟؟؟
 

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
به احتمال فراوان مقدار DDLL.SelectedIndex هیچ کدام از مقادیر 0،1 یا 2 نیست بلکه -1 هست و مقدار strsql همچنان null می مونه و ارور می ده . چک کن ببین همچین چیزی هست یا نه . برای دستور switch مقدار default رو هم بذار...
 

fivestar

Registered User
تاریخ عضویت
14 نوامبر 2006
نوشته‌ها
73
لایک‌ها
0
مهندس جون . مشکل برنامه نویسی نیست !!!! چون 100 هزار بار چکش کردم و درست بوده و جواب داده !!!!

بعد از مدتها که با برنامه کار می کردم این پیغام میده
به پیغام خطا دقت کن :


an unhandled exception of type 'System.StackOverflowException' occurred in System.Data.dll


مثل اینکه یه Stack که تو فایل System.Data.dll هست OverFlow شده !!!! خودمم نمی دونم !!!!

حدث می زنم چون زیاد اجراش کردم Stack پر شده !!

شاید چون Connection رو نبستم یا ...... نمی دونم چی کار کنم :(
 

fivestar

Registered User
تاریخ عضویت
14 نوامبر 2006
نوشته‌ها
73
لایک‌ها
0
SQL SERVER 2000 . چطور مگه ؟؟؟
 

fivestar

Registered User
تاریخ عضویت
14 نوامبر 2006
نوشته‌ها
73
لایک‌ها
0
دستت درد نکنه .

SQL Server 2005 Express رو دارم . یه بار هم نصب کردم . ولی چون بار 2000 راحت تر بودم تصمیم گرفتم فعلا تو 2000 کار کنم .

اگه صلاح میدونی ببرمش رو 2005 Express ؟؟؟؟؟؟

این Express با ورژن اصلی چه تفاوت هایی داره ؟؟
 

Graveworm

Registered User
تاریخ عضویت
23 می 2005
نوشته‌ها
1,071
لایک‌ها
12
محل سکونت
Tehran
دستت درد نکنه .

SQL Server 2005 Express رو دارم . یه بار هم نصب کردم . ولی چون بار 2000 راحت تر بودم تصمیم گرفتم فعلا تو 2000 کار کنم .

اگه صلاح میدونی ببرمش رو 2005 Express ؟؟؟؟؟؟

این Express با ورژن اصلی چه تفاوت هایی داره ؟؟
از زمانی که microsoft تکنولوژی .net رو معرفی کرد، در کنار اون همیشه ابزار هایی به صورت رایگان در اختیار مردم گذاشته تا این تکنولوژی رو فراگیر کنه ..
در ورژن 2 هم Visual Web Developer رو به همراه MS SQL Server 2005 Express به صورت رایگان در سایت www.asp.net قابل دانلود هست.
برای برنامه نویس، تقریبا هیچ فرقی نمیکنه نسخه express با advanced و تفاوت ها در بخش database administration هست که برای برنامه نویس محدودیتی ایجاد نمیکنه..

به هر حال بهتره با تکنولوژی پیش بریم .. 2005 بهتر از 2000 هست.. هر چند که سال دیگه میخواد 2008 رو بده بیرون ! :دی
 
بالا