![]() |
|
اريد حل حفظ البيانات - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183) +--- الموضوع : اريد حل حفظ البيانات (/showthread.php?tid=27240) |
RE: اريد حل حفظ البيانات - vb2010 - 14-11-18 السلام عليكم ماهو الفرق بين Entity framework و linq RE: اريد حل حفظ البيانات - dasktop - 14-11-18 1. Entity Framework: تعتبر أفضل تقنية (طبقة تواصل مع قاعدة البيانات). لها مواصفات عمل (LINQtoSQL). ولكن بالنسبة Entity التحدث لن يكون مباشر إلى قاعدة البيانات وانما إلى Conceptual Model وهو انعكاس لقاعدة البيانات + مجموعة من التعريفات الإضافية على هذه الطبقة لتخصيص وتوسيع العمل أكثر. لنأخذ مثال صغير مثلاً.
تخيل لدينا جدول يسمى مستخدم (User) بقاعدة البيانات، ويحوي مجموعة من المستخدمين يقسمون إلى (Admin, Member, User). طبعا يتم التمييز بين كل نوع عن طريق حقل (النوع). ضمن Conceptual Model يمكننا فصل الجدول إلى ثلاث جداول (AdminUser, MemberUser, NormalUser). حيث نقوم بعمل كلاسات ترث من كلاس User ، وضمن الكود نتعامل مع AdminUser بدل User وعن التخزين أو التعديل، يتم إرجاعه ضمنيا إلى الحقل المناسب ضمن جدول User، بالتالي يكون التعامل برمجياً أسهل وأوسع. قس هذا الأمر على نماذج واسعة.
ملاحظة: LINQtoSQL قام بتطويرها فريق #C ضمن ميكروسوفت، أما Entity Framework قام بتطويرها فريق ADO.NET ضمن ميكروسوفت، ورغم أن الطريقتين تعتمدان على LINQ للاستعلامات، إلى أن البنية الداخلة تختلف اختلافا واضحا.
LINQtoSQL تعتمد على SqlClient للتحدث مع قاعدة البيانات.
Entity Framework تعتمد على EntityClient للتحدث مع قاعدة البيانات.
|