شروع کار با Entity Framework با استفاده از روشDatabase First - بخش سوم: دسترسی به داده ها در #C
حالا رسیدیم به بخش جالبش! بخش اول را اینجا و بخش دوم را اینجا ببینید.
حالا برای دسترسی به داده های پایگاه داده در #C، باید به پایگاه داده متصل بشیم، که باید از همون اسمی که گفتم دلخواهه استفاده کنیم!
اضافه کردن یک سطر به جدول:
using (var context = new MyDBEntities())
{
User me = new User()
{
Username="majid",
Password="xyz"
};
context.User.AddObject(me);
context.SaveChanges();
}
این کد me را که از نوع User است، به جدول User اضافه می کنه.
نکتش اینجاست که نیازی نیست مقدار Id رو تعیین کنید! این مقدار به طور خودکار و به صورت افزایشی تعیین میشه! (طبق بخش اول).
همچنین بعد از هر کاری که روی جدول تغییر ایجاد می کنه، برای ذخیره ی تغییرات باید از متد SaveChanges استفاده کنید!
جستجوی یک سطر:
using (var context = new MyDBEntities())
{
User foundUser = context.User.FirstOrDefault(i => i.Id == 1);
}
برای این کار مطابق کد بالا، از متد FirstOrDefault استفاده می کنیم. در داخل آن از LINQ استفاده می کنیم. (فایل آموزشی LINQ)؛ این متد در صورت نیافتن User با Id برابر با 1، null بر می گردونه!
حذف یک سطر
using (var context = new MyDBEntities())
{
User foundUser = context.User.FirstOrDefault(i => i.Id == 1);
context.User.DeleteObject(foundUser);
context.SaveChanges();
}
برای حذف یک سط باید ابتدا خود اون سطر رو از جدول دریافت کنید (خط اول این کار رو انجام میده). بعد با متد DeleteObject آن را حذف کنید.
جستجوی چندگانه
using (var context = new MyDBEntities())
{
var result = context.Article.Where(m => m.Enabled == true && m.Title.Contains("Hello"));
foreach(Article a in result)
Console.WriteLine(a.Title);
}
متد Where برای جستجو به کار میره و اینجا مقاله هایی رو جستجو می کنه که فعال اند و عنوانشون کلمه ی "Hello" رو داره. بعد می تونید توی نتایج با foreach سیر کنید!
تغییر سطر
using (var context = new MyDBEntities())
{
User foundUser = context.User.FirstOrDefault(i => i.Id == 1);
foundUser.Username="mjr";
context.SaveChanges();
}
همین طور که در کد می بینید، برای تغییر سط کافیه اون سطر رو از پایگاه داده بگیرید و بعد هر تغییری می خواید، روش انجام بدید و تغییرات رو ذخیره کنید!
در بخش های بعدی از وراثت در Entity Framework و سایر متدهای مفید میگم!
نگن هیشکی نظر نمیده