• پایان فعالیت بخشهای انجمن: امکان ایجاد موضوع یا نوشته جدید برای عموم کاربران غیرفعال شده است

چجوری میتونم درحالی که datareaderبازه از excutescalar استفاده کنم؟

shervin

ASP.net
کاربر قدیمی پرشین تولز
تاریخ عضویت
26 ژوئن 2005
نوشته‌ها
6,353
لایک‌ها
261
سن
39
محل سکونت
تهران
آقا من نیاز دارم درحالی که darareader بازه و درحال خوندنه یه ExecuteScalarداشته باشم
ولی میگه نمیشه و باید اول ببندیش . این دوتا توی 2 تا روال مختلفن و حتی براشون Sqlcommandهای مجزا تعریف کردم ولی فایده نداشت
راستی یه سوال دیگه
چجوری میشه بدون دیتا گرید یا یه کنترلی که datasource داشته باشه محتویات datareader رو خوند مثلا توی یه متغیر یا لیبل
سوال اولی خیلی مهمتره
 

Y2K

Registered User
تاریخ عضویت
20 فوریه 2006
نوشته‌ها
656
لایک‌ها
1
محل سکونت
Location
1: توی دو تا کانکشن مجزا بذار ببین درست میشه
2: اینجوری مثلا من میخوام فیلد نام رو بکشم بیرون(شماره فیلد رو میدم)

string name;
name=datareader1.getvalue(1).tostring
 

shervin

ASP.net
کاربر قدیمی پرشین تولز
تاریخ عضویت
26 ژوئن 2005
نوشته‌ها
6,353
لایک‌ها
261
سن
39
محل سکونت
تهران
یه سوال دیگه هم دارم
فرض کن من میخوام یه لیست از آی دی هایی که یه خصوصیت رو دارن ایجاد کنم.
مثلا بگم آیدی هایی که کتگوریشون 4 ا بیار بیرون و میخوام دونه دونه ازشون استفاده کنم. راهی نیست که اول همرو بکشم بیرون بعد استفاده کنم؟ همشون یه فیلدن واسه همین مشکله.تو چه شئی بریزم که قابل بازیافت به طور مجزا باشه؟
نمیدونم اصلا منظورمو متوجه شدی یا نه
 

mehdi_25

Registered User
تاریخ عضویت
31 آگوست 2006
نوشته‌ها
202
لایک‌ها
0
محل سکونت
طهران
با استفاده از آرایه ...
همه رو بریز داخل یه آرایه بعد هر بلایی که خواستی سرشون در بیار
 

shervin

ASP.net
کاربر قدیمی پرشین تولز
تاریخ عضویت
26 ژوئن 2005
نوشته‌ها
6,353
لایک‌ها
261
سن
39
محل سکونت
تهران
1: توی دو تا کانکشن مجزا بذار ببین درست میشه
2: اینجوری مثلا من میخوام فیلد نام رو بکشم بیرون(شماره فیلد رو میدم)

string name;
name=datareader1.getvalue(1).tostring
ایول آقا درست شد
ایشالا عروسی بچت:D
 

shervin

ASP.net
کاربر قدیمی پرشین تولز
تاریخ عضویت
26 ژوئن 2005
نوشته‌ها
6,353
لایک‌ها
261
سن
39
محل سکونت
تهران
با استفاده از آرایه ...
همه رو بریز داخل یه آرایه بعد هر بلایی که خواستی سرشون در بیار
آره میدونم
میگم اگه مثلا 200 تا رکورد بود چجچوری به رکورد 65 دسترسی داشته باشم
فکر کنم سوالم از پایه ایراد داشت
همون Datareader و while کارو راه میندازه
 

mehdi_25

Registered User
تاریخ عضویت
31 آگوست 2006
نوشته‌ها
202
لایک‌ها
0
محل سکونت
طهران
بالا خره باید در Datareader هم حد اقل ID رکورد مورد نظر رو داشته باشی دیگه . اینجا هم میتونی شماره رکورد آرایه رو برداری و مستقیماً مثلاً Name[65] اونو فراخونی کنی
 

Y2K

Registered User
تاریخ عضویت
20 فوریه 2006
نوشته‌ها
656
لایک‌ها
1
محل سکونت
Location
میگم اگه مثلا 200 تا رکورد بود چجچوری به رکورد 65 دسترسی داشته باشم
فکر کنم سوالم از پایه ایراد داشت
همون Datareader و while کارو راه میندازه


البته میتونی از دیتاست استفاده کنی
ضعف دیتاریدر اینکه برای دسترسی به یه فیلد باید فیلدهای قبلی رو پیمایش کنی
دیتاست امکانات بیشتری بهت میده که مثلا فیلد فلان ردیف n ام رو بخون و یا اینکه دوتا نتیجه رو بخونی و اونا رو توی یه دیتاست بریزی و بعد بینشون relation تعریف کنی و خیلی چیزهای عجیب و غریب دیگه ولی سرعت
دیتاریدر رو نداره و جای بیشتری نسبت به دیتاریدر توی حافظه اشغال میکنه
 
بالا