۱۳۸۹ شهریور ۱, دوشنبه

آموزش اتصال به دیتابیس اکسس توسط LINQ


با توجه به اینکه LINQ در فریم ورک های زیر 4 امکان اتصال به دیتابیس اکسس را ندارد ، شرکت های مختلفی Linq Provider هایی را برای اتصال به سایر پایگاه های داده ایجاد کرده اند.

ALinq یک linq provider است که امکان اتصال به دیتابیس های مختلفی از جمله اکسس را فراهم میکند. برای استفاده از این محصول آنرا از سایت alinq به صورات رایگان دانلود کنید
.



پس از دانلود و نصب این بسته ، وارد آدرس نصب برنامه شوید. (در ویندوز 7 بصورت C:\Program Files (x86)\ALinq خواهد بود) در پوشه ی bin دو فایل ALinq.dll و ALinq.Access.dll را به پوشه ی bin پروژه خود اضافه کنید.

حالا یک دیتابیس اکسس ایجاد کنید و در آن یک جدول بنام student ایجاد کنید. فیلدهای جدول را بصورت زیر تنظیم کرده ایم :
ID از نوع AutoNumber
StudentName از نوع Text
UniName از نوع Text
Level از نوع Number

دیتابیس را در پوشه app_data ذخیره کنید . حالا در فایل default.aspx خود یک دکمه اضافه کنید و وارد بخش کد صفحه شوید. توجه کنید که کدها به زبان C-sharp است و در صورت لزوم میتوانید آنها را به کد vb.net تبدیل کنید. میخواهیم یک کلاس بنام student ایجاد کنیم و در آن جدول student را به این کلاس map کنیم.
[ALinq.Mapping.Table(Name = "Student")]
    public class Student
    {
        [ALinq.Mapping.Column]
        public string ID;

        [ALinq.Mapping.Column]
        public string Studentname;

        [ALinq.Mapping.Column]
        public string uniname;

        [ALinq.Mapping.Column]
        public string level;
    }
حالا در کد click شدن دکمه هم کد زیر را اضافه کنید: 
var context = new ALinq.DataContext(Server.MapPath("App_data/db.mdb"), typeof(ALinq.Access.AccessDbProvider));
       
        var resss = from cust in context.GetTable()
                    where cust.uniname == "Azad Qazvin"
                    select new { cust.Studentname, cust.level };
       
        foreach (var student in resss)
            Response.Write(student.Studentname + " - " + student.level+ " <br>");
کد بالا یک DataContext از روی بانک اکسس ایجاد میکند و با استفاده از یک کوئری لینک ، مقادیر نام و level هر دانشجویی را که دانشگاهش Azad Qazvin  باشد بر میگرداند. برای تست برنامه چند دانشجو در جدول وارد کنید و نام دانشگاه برخی از آنها را Azad Qazvin بگذارید.

دانلود کد این پروژه


برای مطالعه بیشتر در مورد linq میتوانید به مطالب ثبت شده در سایت idevCenter مراجعه کنید.
منبع:macromediax.com

هیچ نظری موجود نیست:

ارسال یک نظر