PDA

View Full Version : سوال درباره مزیت دیتا ریدر و دیتاویو نسبت به هم در پر کردن یک کنترل



moferferi
دوشنبه 22 تیر 1388, 07:33 صبح
سلام.
برای پر کردن یک کنترل مثل دیتاگربدویو یا کمبو از اطلاعات یک جدول بهتره که این کار را با دیتاویو انجام دهیم ؟

da = new SqlDataAdapter("select * from person", my_cn);

{
da.Fill(ds,"person");
dv.Table = ds.Tables["person"];
dv.Sort = "family";
dataGridView1.DataSource = dv;

}
یا به مسیله دیتا ریدر این کار را انجام دهیم.
برای نرمافزاری که تحت شبکه است کدام یک سرعت امنیت و سرعت بیشتری دارند.
البته خود من تمام دستورات sql برنامه ام را در به صورت sp نوشتم و فعلا از دیتا ویو استفاه میکنم

hozouri
دوشنبه 22 تیر 1388, 08:58 صبح
سلام
تا اونجایی که من اطلاعات دارم چون دیتا ریدر فقط خواندنی است و به ترتیب به اطلاعات دسترسی پیدا می کنید سرعت نسبتاً بالایی نسبت به آبجکت های دیگه ای داره.

moferferi
دوشنبه 22 تیر 1388, 11:14 صبح
ممنون.
پس به نظر شما براي select كردن رديف هايي خاص استفاده از ديتاريدر بهتر از استفاده از sp و فراخواني ان در برنامه است؟
البته من سوالم به خاطر اينه كه تحت شبكه كدوم روش بهتره؟

SabaSabouhi
دوشنبه 22 تیر 1388, 12:26 عصر
با سلام
DataReader بسیار سریع‌تر از بقیه روش‌ها هست. فقط محدودیتش اینه که فقط برای خواندن و فقط به صورت یکی پس از دیگیری هست. یعنی امکان Navigate نداریم.
بسیار مناسب هست برای جستجو، یا پر کردن یک لیست یا جدول از محتویات مورد نظر.

اگر نیاز به ویرایش اطلاعات در حافظه و سپس به‌روز کردن اطلاعات در Database وجود داره استفاده از DataTable توصیه می‌شه.

DataView چیز مستقلی نیست، فقط یک زیر مجموعه از یک DataTable هست که شما می‌توانید با یک فیلتر اون رو به دست بیارید. و البته امکان Sort کردن اطلاعات رو هم به شما می‌ده.

صبا صبوحی