آژانس هواپیمایی
pop up

exception of type 'System.StackOverflowException'

شروع موضوع توسط fivestar ‏11 آگوست 2007 در انجمن asp , ASP.NET

  1. fivestar

    fivestar Registered User

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


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

    باید چیکار کنم ؟؟؟
     
  2. amin_lili

    amin_lili کاربر تازه وارد

    تاریخ عضویت:
    ‏24 آپریل 2007
    نوشته ها:
    528
    تشکر شده:
    2
    محل سکونت:
    ای کاش آنجا ...
    نمونه کدت رو بذار تا بررسی کنیم
     
  3. fivestar

    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


    چی کار کنم ؟؟؟؟
     
  4. amin_lili

    amin_lili کاربر تازه وارد

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

    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 رو نبستم یا ...... نمی دونم چی کار کنم :(
     
  6. Graveworm

    Graveworm Registered User

    تاریخ عضویت:
    ‏23 می 2005
    نوشته ها:
    1,063
    تشکر شده:
    12
    محل سکونت:
    Tehran
    از sql server 2000 استفاده میکنید یا 2003 ?
     
  7. boxilink
  8. fivestar

    fivestar Registered User

    تاریخ عضویت:
    ‏14 نوامبر 2006
    نوشته ها:
    73
    تشکر شده:
    0
    SQL SERVER 2000 . چطور مگه ؟؟؟
     
  9. Graveworm

    Graveworm Registered User

    تاریخ عضویت:
    ‏23 می 2005
    نوشته ها:
    1,063
    تشکر شده:
    12
    محل سکونت:
    Tehran
    خوب همونجور که حدس میزدم .. این مشکل از sql server 2000 هست.

    شما باید تمامی Update های موجود برا sql server 2000 رو بگیری و نصب کنی یا اینکه برید رو 2003
     
  10. fivestar

    fivestar Registered User

    تاریخ عضویت:
    ‏14 نوامبر 2006
    نوشته ها:
    73
    تشکر شده:
    0
    دستت درد نکنه .

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

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

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

    Graveworm Registered User

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

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