چه در برنامه های تحت ویندوز و چه در برنامه های تحت وب ، برای واکشی اطلاعات از دیتابیس یک سری روش ها مشخص وجود دارد.

در مقالات قبلی کمی با ado.net آشنا شدیم ، امروز می خوام بصورت کامل و مفصل با انواع روش های دریافت اطلاعات از دیتابیس و نمایش اون درون سایت آشنا بشیم.


این روش ها عبارتند از:

  1. استفاده از کنترل SqlDataSource : این روش به دلیل اینکه خطاها رو اصلا نمیشه کنترل کرد ، فقط در پروژه های دانشجویی کاربرد داره.
  2. کد نویسی دستی (ADO.Net) : این روش خود به چند روش قابل انجامه:
    • SqlDataReader
    • SqlAdapter و DataTable
    • Scalar
  3. با کمک عزیز دل خودم یعنی Entity Framework
در ادامه مقاله شما را با تمامی این روش ها آشنا می کنم و کلی مثال براتون میزارم که کاملا با کدنویسی هر روش آشنا بشید.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

1- استفاده از کنترل SqlDataSource

در روش اول یک عدد SqlDataSource به صفحه اضافه می کنین و بعد روش کلیک می کنین تا یک فلش کوچک در کنارش ظاهر بشه ، با کلیک روی این فلش منوی هوشمند این کنترل ظاهر میشه ، بعد از منوی هوشمند روی عبارت Configure DataSource کلیک کنید.

با این کار یک پنجره جدید باز میشه که ازتون کانکشن استرینگ می خواد.

اگر از قبل کانکشن استرینگ توی فایل web.config ست کرده اید ، نام کانشکن رو از منوی کرکره ای انتخاب کنید، در غیر اینصورت روی دکمه New Connection کلیک و اطلاعات کانشکنتون رو تنظیم کنید و Next کنین.

در این بخش از شما پرسیده میشه که آیا می خواین کانکشن جدید توی web.config ذخیره بشه ؟ در اینجا تیک Yes .... رو بزنین و در بخش پایینی هم یه اسم دلخواه برای کانکشن انتخاب کنین .

در مرحله بعد لیست تمامی جدولا توی یک منوی کرکره ای لیست میشه که با انتخاب هر کدوم در بخش پایینی لیست تمامی ستون های جدول مورد نظر لیست میشه که می تونین هر کدوم رو که می خواین تیک بزنین و یا اینکه تیک کنار عبارت * رو بزنین (* SELECT) دین معنی که تمامی ستون ها رو می خواین SELECT کنین.

دکمه های WHERE و ORDER BY هم در اینجا وجود داره که کار باهاشون خیلی سادست ....

در پایان NEXT و Finish رو بزنین.

حال یک کنترل داده ای مثل گرید ویو داخل صفحه اضافه و روش کلیک کنین تا فلش کنارش ظاهر بشه ، روی فلش کلیک کنین تا منوی هوشمندش ظاهر بشه ، حال از منوی کر کره ای ، منبع داده ای رو روی کنترل SqlDataSource تنظیم کنین.

در منوی هوشمند با کلیک روی Edit Columns می تونین اسم ستون ها رو فارسی کنین (ایم هدر هر یک از ستون ها رو)
کار تمام است  ؛ به همین سادگی


2- استفاده از ADO.Net
در این روش ابتدا باید کتابخانه های مورد نیاز رو import کنیم.

الف) با استفاده از SqlDataReader :



دقت کنین که بنده در خط اول ، کانشکشن استرینگ رو بوسیله دستور System.Configuration.ConfigurationManager.Connecti onStrings["MyConnectionString"].ToString مستقیم از داخل فایل web.config خوندم .

اینجوری دیگه کانشکسن استرینگ رو توی صفحاتم نمی نویسم که امنیت کار بالا میره و همچنین در صورتی که 4 روز دیگه تغییری در کانکشنم بوجود بیاد ، دیگه نیاز نیست کد n تا صفحه رو تغییر بدم و فقط کافیه که کانشکسن استرینگ داخل web.config رو تغییر بدم.

(البته بنده به شخصه حتی با قرار دادن کانکشن استرینگ در web.config هم به شدت مخالفم و معتقدم که اطلاعات حساس حتما باید DLL بشه ، الته این مورد در نرم افزار های تحت وب خیلی مهمه)

استفاده از SqlDataReader سرعت بسیار بالایی نسبت به استفاده از SqlDataAdapter داره ولی بدیش اینه که برای مقادیر کم مناسبه ، مثلا اگر بخوایم اطلاعات یک سطر از دیتابیس رو بخونیم خوبه ولی برای دریافت لیستی از اطلاعات (چندین سطر) و نمایشش در داخل صفحه مناسب نیست.
چون کد نویسی زیادی می طلبه ...

در آموزش بعدی روش دیگر دریافت اطلاعات از دیتبایس رو آموزش خواهم داد.

نوشته شده در تاریخ جمعه 14 تیر 1392    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET، آموزش ado.net، آموزش Entity Framework،     | نظرات()