-
آموزش قدم به قدم اعمال اصلی با entity framework
در این تایپیک قصد دارم entity framework را بصورت کاملا کاربردی براتون توضیح بدم.
و تا حدودی تایپیک کاملا متفاوتی از تایپیک های مشابه در اینجا داشته باشیم.
از یه مقدمه برای این موضوع شروع می کنم و دوستان اگر استقبال کنند و به ما انگیزه بدهند اعمال اصلی را بصورت کاربردی قدم به قدم براتون می گم.
مقدمه اي در مورد entity framework
entity framework یک فریم ورک ORM برای دات نت فریم ورك است که نسخه یک آن به همراه دات نت فریم ورك 3.5 سرویس پک 1 عرضه شد اما مورد استقبال توسعه دهندگان قرارنگرفت. نسخه 2 این فریم ورك به صورت بتا به عنوان بخشی از ویژوال استادیو 2010 قابل دسترس است ADO.NET Entity Framework. نام اصلی این فریم ورك است و جزئی از تکنولوژی ADO.NET است.
ابزار طراحی Entity Framework در ویژوال استادیو Entity Framework مدل رابطه اي موجود در یک دیتابیس را به مدل مفهمومی تبدیل می کند و آن را به اپلیکیشن ما تحویل می دهد. در مدل رابطه اي عناصر ترکیبی از جداول هستند، به همراه کلید هاي اصلی و خارجی که جدول ها را به هم مرتبط می سازند. برعکس آن، انواع موجودیت ها مدل مفهومی داده را تعریف می کنند. انواع موجودیت اجتماعی از چند فیلد است و می تواند شامل اطلاعات از چند جدول فیزیکی باشد .
انواع موجودیت می توانند به هم مرتبط باشند، مستقل از ارتباطاتی که در مدل فیزیکی دارند شماي منطقی و نگاشت آن به شماي فیزیکی به عنوان یک Entity Data Model یا EDM نمایش داده می شوند که مشخصات EDM در یک فایل XML ذخیره می شود.
entity framework از EDM برای براي انجام عملیات نگاشت و دادن قابلیت کار با موجودیت ها به اپلیکیشن استفاده می کند .
Entity Framework اطلاعات مورد نیاز هر موجودیت را با Join کردن چندین جدول از مدل فیزیکی (دیتابیس) بدست می آورد هنگامی که اطلاعات یک موجودیت آپدیت می شود entity framework بررسی می کند که داده ها مربوط به کدام یک از جدول هاي موجود در دیتابیس هستند، سپس آن ها را با دستور SQL مناسب آپدیت می کند.
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
خب حالا می خوام توی یه فایل آموزشی نحوه ی اتصال پایگاه داده به سی شارپ رو بگم.
فایلو دانلود کنید و اگر سوالی داشتین من در خدمتم
دانلود فایل آموزشی
برای دانلود روی لینک راست کلیک کنید و save target az یا save link az بزنید
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
بعد از اتصال پایگاه داده به پروژه حالا می خوام براتون کد بسیار ساده مشاهده اطلاعات یک جدول رو بزارم
به عنوان مثال کد زیر را در رویداد لود فرم بنویسید:
testEntities db = new testEntities();
dataGridView1.DataSource=db.student.Select(p=>p);
testEntites نام اتصال پایگاه داده تون هست
student نام جدوله
دوستان اگر استقبال نکنند دیگه ادامه نمی دم
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
کد اضافه کردن اطلاعات به جدول با entity framework
testEntities db= new testEntities();
student st = new student();
st.stid = textBox1.Text;
st.name = textBox2.Text;
st.famil = textBox3.Text;
st.avg =Convert.ToDouble(textBox4.Text);
db.AddTostudent(st);
db.SaveChanges();
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
کد جستجو با entity framework
کدجستجو بر اساس یک فیلد خاص( بر اساس شماره دانشجویی)
string id = textBox8.Text.Trim();
testEntities db = new testEntities();
dataGridView1.DataSource = db.student.Where(p => p.stid == id);
textBox8.Clear();
کد جستجو بین دو فیلد خاص(بین دو معدل)
double stavg =Convert.ToDouble(textBox5.Text);
double enavg = Convert.ToDouble(textBox10.Text);
testEntities db = new testEntities();
dataGridView1.DataSource = db.student.Where(p => p.avg>=stavg && p.avg<=enavg);
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
آموزش ویرایش در entity framework
برای این قسمت به تایپیک زیر سر بزنید
آموزش ویرایش اطلاعات با Entity framework
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام firoozi90
من جدیدا به این مبحث علاقه مند شدم و میخوام بقیه پروژه هامو به این روش ادامه بدم
ولی اصلا اطلاعات زیادی در موردش ندارم ای کاش شما به آموزشتون ادامه بدین
بازم ازتون ممنونم
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
نقل قول:
نوشته شده توسط
vahidpur
سلام firoozi90
من جدیدا به این مبحث علاقه مند شدم و میخوام بقیه پروژه هامو به این روش ادامه بدم
ولی اصلا اطلاعات زیادی در موردش ندارم ای کاش شما به آموزشتون ادامه بدین
بازم ازتون ممنونم
سلام
متاسفنه دوستان همکاری نمی کنند.شما می تونید به تایپیک زیر برید
دانلود کتاب های آموزشی LINQ
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام
ممنون از نكاتي گه گذاشتيد
اما حداقل براي من مشكلات بيشتر بعد از به كارگيري ef در پروژه ها شروع شد
و همان اول كار، با سوالاتي مواجه شديم كه تاكنون هم جواب درستي براش پيدا نكرديم
و نزديك ده روز هم در اين تالار سوال گذاشتيم و ولي خبري نيست
ممنون مي شم اگر در اين زمينه تجربه اي داريد به زبان ساده در اختيار ما هم قرار بدهيد
اگر هم اموزشتون را ادامه بدهيد خيلي عاليه است
https://barnamenevis.org/showthread.php?328890-%D8%
https://barnamenevis.org/showthread.php?329365-%D8%AA%D8
با تشكر
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
لطفا حذف رکورد را هم شرح دهید
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
لطفا ادامه بدید مطالب مفید وبسیار قابل توضیح داده شده
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام آقای فیروزی خیلی خوب هستند خیلی خوبه همینطور پیش برید.
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
نقل قول:
نوشته شده توسط
fahimi
لطفا حذف رکورد را هم شرح دهید
با فرض اینکه جدول مورد نظر ما tbl_x بوده و کلید جدول ID باشد و ID رکورد مورد نظر ما Number باشد، کد حذف به صورت زیر خواهد بود:
using( var contex = new testEntities())
{
var SelectedItem = contex.tbl_x.where(M=>M.ID==Number).First();
contex.deleteobject(SelectedItem);
contex.savechanges();
}
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام ممنونم از توضیحاتتون میشه یه فایل به صورت پروژه ساده بذارید.
-
1 ضمیمه
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
اینم یه پروژه ساده که 4 عمل اصلی رو با کمک LINQ و EF داخلش پیاده سازی کردم
هرجاش که گنگ بود بگید تا راهنمایی کنم :)
دیتابیس: SQL compact
ضمیمه 86606
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام . من متوجه نشدم از این فایل آموشی چطور استفاده کنم. میشه لطفا راهنمایی کنید ؟ ممنون
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
ممنونم دوست عزیزم بابت پروژه خیلی زحمت کشیدی فقط در ابتدای کار چند تا مشکل دارم لطفا . . .:لبخندساده:
1 - دلیل رخ دادن این خطا چیه؟
2 - این چند تا خطا در هنگام اجرا رخ دادن، نیاز هست بانک اطلاعات رو اتچ کرد؟ لطفا مبتدی توضیح بدید.
3 - رمز دیتا رو شما گذاشتید؟ ببخشید چند؟
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
پسوورد دیتابیس arasoft هستش
در مورد اررورها فکر کنم که مشکل از ورژن ها باشه، من این پروژه رو با Visual Studio 2010 Sp1 نوشتم و خیلی از باگ هایی که توی EF وجود داشت توی SP1 ترمیم شده! احتمالا واسه همینه که مدلو نمیشناسه!
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام با تشکر
من تاره با این تاپیک آشنا شدم خیلی عالیه لطفا اگر امکان دارد به همین شکل ادامه بدید
با تشکر:تشویق:
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
نقل قول:
نوشته شده توسط
firoozi90
کد جستجو با entity framework
کدجستجو بر اساس یک فیلد خاص( بر اساس شماره دانشجویی)
string id = textBox8.Text.Trim();
testEntities db = new testEntities();
dataGridView1.DataSource = db.student.Where(p => p.stid == id);
textBox8.Clear();
کد جستجو بین دو فیلد خاص(بین دو معدل)
double stavg =Convert.ToDouble(textBox5.Text);
double enavg = Convert.ToDouble(textBox10.Text);
testEntities db = new testEntities();
dataGridView1.DataSource = db.student.Where(p => p.avg>=stavg && p.avg<=enavg);
ممنون
اگه بخوام بعد از جستجو توی گرید ویو فقط فیلد های خاصی نشون داده بشه چطوری بنویسمش؟؟؟؟
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
نقل قول:
نوشته شده توسط
uniqueboy_ara
با فرض اینکه جدول مورد نظر ما tbl_x بوده و کلید جدول ID باشد و ID رکورد مورد نظر ما Number باشد، کد حذف به صورت زیر خواهد بود:
using( var contex = new testEntities())
{
var SelectedItem = contex.tbl_x.where(M=>M.ID==Number).First();
contex.deleteobject(SelectedItem);
contex.savechanges();
}
با ابن روش هم میشه حذف کرد که خیلی ساده هم هست
testEntities dbtest = new testEntities();
tbl_test tbl = new tbl_test();
tbl=dbtest.tbl_test.where( p => p.Name==textnox1.text).first();
dbtest.DeleteObject(tbl);
dbtest.SaveChanges();
-
1 ضمیمه
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام .پروژه Entity Frame work
:تشویق:
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
ببخشد اگه بخوام وقتی درج انجام میشه اگه یکی از فیلد هایی که باید پر بشه usernameباشه, جطور میشه کدی نوشت که اگه این شخص موجود نبود در دیتابیس اون وقت درج کنه اکه موجود بود ثبت نشه
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
کاش بصورت فیلم آموزشی یاد میدادین 4 عمل اصلی رو
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام .در رویداد کلیک دکمه مربوطه کد زیر رو بنویس
using (var context=new studentEntities1())
{
var quer = context.users.Where(a=>a.Name==txtname.Text);
if (quer.Count() == 0)
{
user u1 = new user();
u1.Name = txtname.Text;
u1.Family = txtfamily.Text;
u1.Age = txtage.Text;
u1.Address = txtaddress.Text;
context.users.AddObject(u1);
context.SaveChanges();
}
else
{
MessageBox.Show("کاربری با این نام موجود می باشد");
}
}
user:اسم جدول
اگه سوالی داشتی در خدمتم
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
به زودی این کار رو انجام می دم و توی سایتم میگذارم.وقتی تم.مش کنم خبر میدم.
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام واقعا دستتون درد نکنه
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام
ایا میشه با entity framworkگزارش گیری کرد؟ چطور؟
من ویژوال استدیو 2012 نصب دارم ولی کریستال ریپورت داخلش نیست. خود کریستال ریپورت رو از سایتی دانلود کردم میگه مخصوص ویژوال 2010است و خود ویژوال استدیو2012 کریستال ریپورت رو داره میشه لطف کنیدبگین چطوری باید بیارمش
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام من با entity framework برنامه ای نوشتم حالا میخوام با استفاده از circular Progress(زمان load) کاری کنم که پر شدن درصد circular Progress بستگی داشته باشه به اینکه چقدر اطلاعات داخل databaseباشه یعنی زمان پر شدن درصد به اطلاعات بستگی داشته باشه
سوال بعد من اینه که چطور میشه در entity framework مثلا اگر ستونی در دیتابیس به نام بدهکار داریم به همه ی عناصر فقط همین ستون دسترسی داشته باشیم تا بتونیم این ها رو ویرایش کنیم
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام سوالاتی که پرسیدم رو می شه جواب بدین کارم گیره
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
چطوری میشه با استفاده از linq ستونهایی رو که در گرید ویو نمایش داده میشه محدود کرد؟؟؟؟ چون همیشه که نمیخوایم تمام ستون ها رو نمایش بدیم! همینطور در مورد کمبوباکس و ...
و چطوری میشه اسم ستون ها رو تغییر داد
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام و قتی select میکنی جلوش یه new بنویس و داخل{} اسم فیلد ها تو بنویس.
اگه نفهمیدی بگو تا یه نمونه برات بذارم.
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام ببخشید دیر ج دادم.ببین کد زیر کارتو راه میندازه .خودم تست نکردم چون دیدم عجله داری اینو گرفتم بنویسم.تست کن اگه جواب نداد بگو تا درستش کنم.
prog1.maximum=20;
using(var context=new student())
{
var query=context.users.name;
foreach(var name in query)
{
prog1.value+=1;
}
}
البته شاید درست نباشه چون تستش نکردم.کدهای بالا ر. داخل form _load بنویس .اگه درست نبود زود خبر بده تا بنویسمش
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام دستت درد نکنه از کد بالا ولی این ارور میده منظورم ترد بندیcircular Progress2 هست
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام.پروژه زیر رو دانلود کن احنمالا کارتو راه بندازه.
به لینک زیر هم یه نگاهی بنداز
http://www.codeproject.com/KB/vb/sql...rprogress.aspx
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
در dotnettips.info بهترین آموزش های فارسی Entity Framework توسط جناب وحید نصیری آموزش داده شده اند و نکات و مسائل خیلی گسترده ای هم توسط ایشون و دوستان دیگه مطرح شده اند، فیلم آموزشی، کتاب و ... قرار داده شده است و میتونید از اونها استفاده کنید.
کاری که کردید خیلی خوب هست، اما توصیه میکنم کار تکراری انجام ندید و تمرکز رو بزارید بروی قسمت هایی که شاید پوشش داده نشده اند. مثلا چند پروژه ی کامل و کاربردی ارائه کنید، ترفند ارائه کنید، از تجربیاتتون بگید و ...
وگرنه که مباحث مقدماتی و پیشرفته و نکات بسیار خوبی در سایتی که عرض کردم ارائه شده اند.
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام می شه در مورد گزارش گیری با کریستال ریپورت در entity framwork توضیح بدین اگه امکانش هست یک برنامه در این مورد قرار بدین
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
با سلام و تشکر برای مطالب مفید و پرکاربردتون .
ببخشید برای insert کردن این کاری که گفتین انجام نمیشه ! یعنی راستش اصلا addtostudent رو نمیاره برام !
لطفا راهنمایی کنید.
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
نقل قول:
نوشته شده توسط
sasanazizi2
با سلام و تشکر برای مطالب مفید و پرکاربردتون .
ببخشید برای insert کردن این کاری که گفتین انجام نمیشه ! یعنی راستش اصلا addtostudent رو نمیاره برام !
لطفا راهنمایی کنید.
سلام.اگه کد ها رو کپی کردی باید بجای syudent نام جدول خودت رو بنویسی. و اگر هم کل پروژه رو گرفتی دیتا بیس رو چک کن.
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
p=>p چکار میکنه؟
اگه نذاریمش چی میشه؟
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
نقل قول:
نوشته شده توسط
v.kermani
p=>p چکار میکنه؟
اگه نذاریمش چی میشه؟
دوست عزیز نذاری فرقی نمی کنه
GridView1.DataSource = ctx.Users();
این کد بت همه ی رکورد ها رو میده
اما اینو یاد بگیری خوبه با این کار می تونی یه select بزنی به این شکل
//GridView1.DataSource = ctx.tabelname.Where(x => x.id == 4);
الان رکوردی که ای دی ان برار 4 باشه بت می ده
ctx اسم مدله
tabelname اسم جدوله
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
نقل قول:
نوشته شده توسط
elham_s20
دوست عزیز نذاری فرقی نمی کنه
GridView1.DataSource = ctx.Users();
این کد بت همه ی رکورد ها رو میده
اما اینو یاد بگیری خوبه با این کار می تونی یه select بزنی به این شکل
//GridView1.DataSource = ctx.tabelname.Where(x => x.id == 4);
الان رکوردی که ای دی ان برار 4 باشه بت می ده
ctx اسم مدله
tabelname اسم جدوله
p=>p دستور Linq از نوع لامبدا هستش که همه رکوردهای جدولت را بر می گردونه.به روشی که دوستمون گفتن می تونید ازش استفاده نکنید.اما زمانی که بخواین از شرط استفاده کنید حتما باید از این دستور استفاده کنی.در واقع باید همه رکوردها را بکشی بیرون بعد از توی اونها اون رکورد خاص را پیدا کنی.
در ضمن p یک متغیر هستش و شما می تونید به جای اون از هر متغیر دیگه ای استفاده کنی
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام جناب فیروزی
من تمام مراحل شما رو اجرا کردم و این کد رو نوشتم:
PersepliosEntities de = new PersepliosEntities();
dataGridView1.DataSource = de.Players.Select(p => p);
اما زمان لود کردن اطلاعات داخل grid این پیغام رو میده:
An unhandled exception of type 'System.NotSupportedException' occurred in EntityFramework.dll
Additional information: Data binding directly to a store query (DbSet, DbQuery, DbSqlQuery, DbRawSqlQuery) is not supported. Instead populate a DbSet with data, for example by calling Load on the DbSet, and then bind to local data. For WPF bind to DbSet.Local. For WinForms bind to DbSet.Local.ToBindingList().
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
نقل قول:
نوشته شده توسط
morika
سلام جناب فیروزی
من تمام مراحل شما رو اجرا کردم و این کد رو نوشتم:
PersepliosEntities de = new PersepliosEntities();
dataGridView1.DataSource = de.Players.Select(p => p);
اما زمان لود کردن اطلاعات داخل grid این پیغام رو میده:
An unhandled exception of type 'System.NotSupportedException' occurred in EntityFramework.dll
Additional information: Data binding directly to a store query (DbSet, DbQuery, DbSqlQuery, DbRawSqlQuery) is not supported. Instead populate a DbSet with data, for example by calling Load on the DbSet, and then bind to local data. For WPF bind to DbSet.Local. For WinForms bind to DbSet.Local.ToBindingList().
سلام دوست عزیز
اگر از visual studio 2012 استفاده می کنید (net framework 4.5 به بالا) باید اینطوری بنویسی
PersepliosEntities de = new PersepliosEntities();
dataGridView1.DataSource = de.Players.Select(p => p).tolist();
اما زمان
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
با سلام لطفا روش گزارش گیری رو در مدل انتیتی و استیمول سافت توضیح بدید . با تشکر
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام به دوستان عزیز
من یه مشکلی دارم با درج اطلاعات
از try و catch استفاده میکنم اگه در ورود اطلاعات خطا باشه مسیج رو نوشون میده ولی دیگه نمیشه اطلاعات رو دوباره اصلاح کرد باید برنامه رو ببندی دوباره وارد کنیددر هر صورت وقتی دکه رو میزنی فقط مسیج رو نشون میده try {
madrak m = new madrak
{
code_madrak = byte.Parse(code.Text),
madark = maghta.Text,
reshteh = reshte.Text
};
database.madraks.AddObject(m);
database.SaveChanges();
show();
}
catch
{
MessageBox.Show("خطا در ورود اطلاعات");
}
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework
سلام
چجوری میتونم
محتویات بدست اومده از Entity fremwork رو که مثلا یک داده بخصوص هست رو داخل text box قرار بدم ؟
(DataGridView1.DataSource = db1.Sellectone(TextBox1.Text
اینیم پروسیجرم هست
CREATE PROCEDURE [dbo].[Sellect_Gozaresh]
@paianeh varchar(MAX)
As
Begin
Select
[نام فروشگاه]
FROM g where [شماره پایانه]=@paianeh
End
-
نقل قول: آموزش قدم به قدم اعمال اصلی با entity framework