ورود

View Full Version : توضیح ساده و روان EntityFrameWork



jaykob
یک شنبه 27 بهمن 1392, 10:18 صبح
سلام دوستان


من برای اولین بار از EntityFramework در پروژه mvc خودم استفاده کردم و فرایند هم خوندن اطلاعات از یک جدول و نمایش در یک View بود کد هارو پیاده کردم و جواب هم گرفتم اما یک توضیح ساده می خواهم در مورد توضیح کد ها و اینکه چرا از EntityFramework استفاده می کنم . چون من قبلا با LINQ و Dataclass ارتباط با دیتابیس خودم رو داشتم الان می خوام بدانم چرا باید به این شکل عمل کنم .

1 - من یک مدل با کد زیر دارم :

[Table("tbl_Employee")]
public class Employee
{
public int EmployeeId { get; set; }
public string Name { get; set; }
public string Gender { get; set; }
public string City { get; set; }
}

* اولین نکته توضیح در مورد خط اول که map کردم جدول به مدل هست بدونم


2 - من یک کلاس در پوشه مدل ها با نام EmployeeContext دارم با کد زیر :

public class EmployeeContext : DbContext
{
public DbSet<Employee> Employees { get; set; }
}

* این کلاس رو خیلی کم درک می کنم توضیح کاملی می خوام

3 - و کنترلر من هم با کد زیر است


public ActionResult Details(int id)
{
EmployeeContext employeecontext = new EmployeeContext();
Employee employee = employeecontext.Employees.Single(x => x.EmployeeId == id);
return View(employee);
}


* این مورد رو هم توضیح می خوام


با view هم مشکلی ندارم .

مشکل من بیشتر از همه اینه که چرا اینقدر راه رو باید رفت چون توی LINQ خیلی ساده تر بود بیشتر مزایا رو می خوام با استفاده از EntityFrameWork چی بدست می آریم هم برام مهمه

ببخشید تازه من mvc و entityframework رو شروع کردم

خیلی خیلی ممنون

jaykob
سه شنبه 29 بهمن 1392, 08:18 صبح
عذر خواهی بابت اینکه دوباره پست می دم . فهم این موضوع برای ادامه کار من مهمه اگر دوستان یک لطفی بکنند و توضیح بدن خیلی ممنون می شم

با تشکر

سید علی گتمیری
سه شنبه 29 بهمن 1392, 08:24 صبح
با سلام - دوست عزیز پاسخ به این سئوال نیازمند مقدمات و درک مفاهیم می باشد و لازمه که حضوری دربارش صحبت بشه. در حقیقت عوامل مختلفی ما رو به اینجا می رسونه که از Pattern MVC استفاده کنیم یا از EntityFramework اونم Code First استفاده کنیم و در ظاهر قضیه اینقدر پیچیدگی ایجاد کنیم - ولی اگه بخوام خیلی ساده پاسخ بدم هر چی پروژه شما بزرگتر باشه و پیچیده تر نگهداری و رفع خطا و توسعه اش پیچیده تر می شه - تمام این ابزار و Pattern ها ومشابه اون برای اینه که بشه این مسئله را راحت تر حل کرد.

jaykob
سه شنبه 29 بهمن 1392, 08:45 صبح
با سلام - دوست عزیز پاسخ به این سئوال نیازمند مقدمات و درک مفاهیم می باشد و لازمه که حضوری دربارش صحبت بشه. در حقیقت عوامل مختلفی ما رو به اینجا می رسونه که از Pattern MVC استفاده کنیم یا از EntityFramework اونم Code First استفاده کنیم و در ظاهر قضیه اینقدر پیچیدگی ایجاد کنیم - ولی اگه بخوام خیلی ساده پاسخ بدم هر چی پروژه شما بزرگتر باشه و پیچیده تر نگهداری و رفع خطا و توسعه اش پیچیده تر می شه - تمام این ابزار و Pattern ها ومشابه اون برای اینه که بشه این مسئله را راحت تر حل کرد.

سلام

خیلی ممنون از توضیحات خوبتون

امکان داره بر طبق کد ها هم یک توضیحاتی بدید که من بیشتر متوجه کد ها هم بشم

با تشکر

ali_autumnal
سه شنبه 29 بهمن 1392, 12:01 عصر
برای درک بهتره این لینک (http://www.dotnettips.info/post/831/ef-code-first-1) رو تا EF24 بخونید