PDA

View Full Version : این خطا در استفاده از متد کلاس به چه دلیله؟



samaram
پنج شنبه 29 بهمن 1388, 18:25 عصر
من میخوام از کلاسی که یکی از بچه های همین انجمن زحمتشو کشیده استفاده کنم. در این بخش کدم با این خطا روبرو میشم:


DTCompare objdate;
A = objdate.NdayBefor(S, M);

Error 10 Use of unassigned local variable 'objdate'
مشکل از کجاست و چطور میتونم رفعش کنم؟

s.Jabbari
پنج شنبه 29 بهمن 1388, 19:32 عصر
DTCompare objdate=null;
A = objdate.NdayBefor(S, M);

samaram
پنج شنبه 29 بهمن 1388, 19:45 عصر
مرثی حل شد. باز یه خطای دیگه داد!!! نمیدونم ربط به این موضوع داره یا نه. کد من اینه:


string D,S,A;
System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
S = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now);
DTCompare objdate=null ;
int M;
SqlCommand cmd = new SqlCommand("select name from [TB_customer]",con );
con.Open();
SqlDataReader dr;
dr = cmd.ExecuteReader();
while (dr.Read())
{
D = dr["date"].ToString();
M = int.Parse(dr["moddat"].ToString ());
A = objdate.NdayBefor(S, M);
if (D == A)
{
MessageBox.Show(" مدت قرار داد تمام شده");
}
else
{
MessageBox.Show(" هنوز تمام نشده");
}


حالا روی این خط این خطا رو میده:
http://www.freeimagehosting.net/uploads/6f77d7049b.jpg

s.Jabbari
پنج شنبه 29 بهمن 1388, 20:10 عصر
ببین اینطوری کار می کنه



D = (string)dr["date"];

samaram
پنج شنبه 29 بهمن 1388, 21:22 عصر
ببین اینطوری کار می کنه




D = (string)dr["date"];

نه . بازم همون خطا رو داد.

Himalaya
پنج شنبه 29 بهمن 1388, 23:53 عصر
select name from [TB_customer]



D = dr["date"].ToString();



dr["column name"]

شما جای column name نوشتید date ... من تو سلکتتون فقط ستونی با اسم name میبینم نه date... مطمئنا از خط بعدی هم ارور خواهد گرفت


M = int.Parse(dr["moddat"].ToString ());

samaram
جمعه 30 بهمن 1388, 09:48 صبح
dr["column name"]

شما جای column name نوشتید date ... من تو سلکتتون فقط ستونی با اسم name میبینم نه date... مطمئنا از خط بعدی هم ارور خواهد گرفت
:اشتباه: درسته. درست شد. حالا باز یه خطا دیگه میده.کدها و خطا رو در این تصویر ببینید:
http://www.freeimagehosting.net/uploads/b52be80e90.jpg

Himalaya
جمعه 30 بهمن 1388, 12:42 عصر
DTCompare objdate

فکر میکنم این خط رو باید اینطوری بنویسید.


DTCompare objdate = new DTCompare();