PDA

View Full Version : سوال: خطاي System.StackOverflowException



tara1367
شنبه 15 مرداد 1390, 11:19 صبح
دوستان با سلام
برنامه من تا حالا کار مي کرد ولي بدون تغيير دادن کدي، در زمان اجرا اين ارور رو روي خط تعريف connection داد در صورتي که در برنامه من هيج حلقه اي وجود ندارد.
لطفا راهنمايي بفرماييد با تشکر

ارور:

An unhandled exception of type 'System.StackOverflowException' occurred in Tellbook.exe

روي خط :
SqlConnection conn = new SqlConnection(@"Server=.\SQLEXPRESS;AttachDbFilename=" + Application.StartupPath + @"\tell.mdf;Integrated Security=True;User Instance=True");

tara1367
شنبه 15 مرداد 1390, 11:21 صبح
اينم فرم اصلي برنامم:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace Tellbook
{
public partial class Form1 : Form
{
SqlConnection conn = new SqlConnection(@"Server=.\SQLEXPRESS;AttachDbFilename=" + Application.StartupPath + @"\tell.mdf;Integrated Security=True;User Instance=True");
SqlDataAdapter da;
fnew fn = new fnew();
public Form1()
{
InitializeComponent();
}
public void showdata()
{
SqlDataAdapter da = new SqlDataAdapter("select * from ttell", conn);
try
{
DataTable dt1 = new DataTable();
da.Fill(dt1);
dataGridView1.DataSource = dt1;
this.ttellTableAdapter.Fill(this.tellDataSet.ttell );
}
catch
{
}
}
private void button2_Click(object sender, EventArgs e)
{
fn.ShowDialog();
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}
private void Form1_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'tellDataSet.ttell' table. You can move, or remove it, as needed.
this.ttellTableAdapter.Fill(this.tellDataSet.ttell );
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
try
{
DataSet ds = new DataSet();
da = new SqlDataAdapter("select * from ttell", conn);
da.Fill(ds);
DataView dv = (ds.Tables[0].DefaultView);
dv.RowFilter = "name LIKE '%" + txtname.Text + "%'";
dataGridView1.DataSource = dv;
}
catch
{
}
}
private void button4_Click(object sender, EventArgs e)
{
showdata();
}
private void button3_Click(object sender, EventArgs e)
{
fn.txtcode.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[0].Value.ToString();
fn.txtname.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[1].Value.ToString();
fn.txttell1.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[2].Value.ToString();
fn.txtlocation1.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[3].Value.ToString();
fn.txttell2.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[4].Value.ToString();
fn.txtlocation2.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[5].Value.ToString();
fn.txttell3.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[6].Value.ToString();
fn.txtlocation3.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[7].Value.ToString();
fn.txtfax.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[8].Value.ToString();
fn.txtaddress.Text = dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[9].Value.ToString();
fn.ShowDialog();
}
}
}

tara1367
دوشنبه 17 مرداد 1390, 08:38 صبح
کسي نيست جواب بده؟ :(((((

Esmail Solhkhah
دوشنبه 17 مرداد 1390, 16:06 عصر
کسي نيست جواب بده؟ :(((((

کدتون موردی نداره اجرا میشه بدون خطا ، فقط چند تا مطلب :

احتمال داره سیستم ویروسی باشه

یا مورد از طرف سیستم عامله

اگه کد پروژه رو با دیتابیس بذارید اینجا دقیقتر میشه بررسی کرد.


ضمنا اگه ناراحت نمیشید : خواهشا کد هایی رو که میزارید اول سلکت کنید بعد از نوار ابزار دکمه # یا #C رو بزنید تا برا خواننده پست خوانا باشن

اینجوری که شما کد رو گذاشتید قبول کنید برا خواننده پست یکم خوندن کد اذیت کننده هست و بیشتر بیننده های پست با دیدن این جور کدها همون اوا ازش میگذرن حتی اگه جوابشم بلد باشن.:خجالت:

موفق باشید.

harash
سه شنبه 04 شهریور 1393, 16:44 عصر
کسي نيست جواب بده؟ :(((((
سلام
من هم اکنون با این مشکل مواجه شدم و دلیل آنرا فهمیدم
دلیل آن ایجاد یک حلقه است در فراخوانی یا ارسال یک یا چند متغیر یکسان برای یک یا چند روال(سابروتین یا فانکشن) در یک زمان است
دات نت قادر به ارزیابی هم زمان نیست و آنرا یک حلقه تصور میکند در برنامه ممکن است با باز سازی عملکرد یک کلید یا منو و یا استفاده
همزمان از چند سابروتین یا فانکشن با متغیر یا متغیرهای مشابه این عمل صورت گیرد.شاید شما دیگه به این جواب نیازی نداشته باشید اما
خواستم سوال پاسخ داده شده باشد.مرسی H.R:لبخندساده:

NASA's Spaceman
سه شنبه 04 شهریور 1393, 17:37 عصر
سلام
منم بعضی وقتا با این خطا مواجه میشم و علتش رو نمیدونم ولی راه حلش رو میدونم و اونم این هست چیزایی که تو کلاس فرم نوشتی رو باید تو متد ها بنویسی و اینجوری مشکل حل میشه و ارور نمیده ولی علتش رو نمیدونم
با ساس Spaceman