يقوم هذا المولد بإنشاء رمز مثل خبير عكس الهندسة قاعدة البيانات الخاصة بك وأنشأ الرمز لك. تماما.
المهندسون العكسيون قاعدة بيانات حالية وتنشئ رمز إطار الكيان الأول فئات POCO ، تعيينات التكوين ، التعدادات ، DBContext ، FAKEDBContext (لاختبار الوحدة السهل) والاتصال الإجراءات المخزنة والوظائف ذات تقدير الجدول.
رمز الرمز الأول الذي تم إنشاؤه بشكل جميل قابل للتخصيص بالكامل
يرجى ملاحظة أن هذا ليس مولد Microsoft العكسي. يقوم هذا المولد بإنشاء رمز كما لو قمت بتصنيع قاعدة بيانات وإنشاء الرمز بمودة باليد. كما يتيح لك تخصيص الرمز الذي تم إنشاؤه حسب رغبتك.
إذا كنت ترغب في ذلك أو كنت تستخدم هذا المشروع ، فيرجى إعطائه نجمة. شكرًا!
مجانًا للأكاديميين (تحتاج إلى عنوان بريد إلكتروني .edu أو .ac أو .sch) ، وليس مجانيًا للاستخدام التجاري.
انتقل إلى موقع ReversePoco لمفتاح الترخيص الخاص بك.
يرجى قراءة وثائق الترقية
انقر هنا لمعرفة ما هو جديد في هذا الإصدار.
تم تصميم هذا المولد ليكون قابلاً للتخصيص من البداية وليس ثابتًا ومتصلًا مثل المولدات الأخرى. العب مع الإعدادات في ملف <database>.tt . هذا ما هو موجود من أجله.
إذا تغيرت قاعدة البيانات الخاصة بك ، فأعد توصيف ملف <database>.tt . هذا كل شيء.
انقر هنا لمشاهدة قائمة كاملة من الميزات.
استخدم nuget وقم بتثبيت حزمة nuget ذات الصلة لقاعدة البيانات الخاصة بك.
install-package Microsoft.EntityFrameworkCore.SqlServerinstall-package EntityFramework Settings.ConnectionString يستخدم المولد سلسلة الاتصال هذه لعكس تصميم قاعدة البيانات الخاصة بك. لم يعد يقرأ سلاسل الاتصال الخاصة بك من *.config files.
على سبيل المثال:
SETTESS.ConnectionString = "Data Source = (Local) ؛ Catalog الأولي = NorthWind ؛ أمان متكامل = صحيح ؛ encrypt = false ؛ rustSerVerCertificate = true" ؛
يجب أن يكون لسلسلة Settings.ConnectionString التي تستخدمها هذه الامتيازات على الأقل: ddladmin و datareader و datawriter . ddladmin مطلوب لقراءة القيود الافتراضية.
في Visual Studio ، انقر بزر الماوس الأيمن على المشروع وحدد "إضافة - عنصر جديد".
حدد عبر الإنترنت ، وابحث عن POCO العكسي .
حدد entityframework مولد POCO العكسي .
امنح الملف اسمًا ، مثل Database.tt وانقر فوق إضافة.
قم بتحرير ملف Database.tt وحدد سلسلة الاتصال الكاملة في Settings.ConnectionString . يستخدم الواحد هذا لقراءة مخطط قاعدة البيانات الخاص بك وعكس هندسة ذلك.
قم بتحرير ملف Database.tt وحدد سلسلة الاتصال في Settings.ConnectionStringName الذي يطابق مفتاح ConnectionString كما هو محدد في appsettings.json أو app.config أو web.config .
احفظ ملف Database.tt ، والذي سيقوم الآن بإنشاء ملف Database.cs . في كل مرة تقوم فيها بحفظ ملف Database.tt الخاص بك ، سيقوم المولد بإعطاء هندسة قاعدة البيانات الخاصة بك.
هناك العديد من الخيارات التي يمكنك استخدامها لتخصيص الرمز الذي تم إنشاؤه. كل هذه الإعدادات موجودة في ملفات Database.tt .
Settings.ConnectionString يتم وضع سلسلة الاتصال اختياريا في وظيفة تكوين onConfiguring:
protected override void OnConfiguring ( DbContextOptionsBuilder optionsBuilder ) { { #n ewline } }
{ { { #n ewline } }
if ( ! optionsBuilder . IsConfigured ) { { #n ewline } }
{ { { #n ewline } }
optionsBuilder . UseSqlServer ( @"" { { ConnectionString } } "" ) ; { { #newline } }
} { { #n ewline } }
} { { #n ewline } } { { #n ewline } } Settings.ConnectionStringName لا يتم استخدام هذا بواسطة المولد ولكن يتم وضعه في مُنشئ DBContext تم إنشاؤه عبر مكالمة إلى Settings.DefaultConstructorArgument .
public { { DbContextName } } ( ) { { #n ewline } }
{ { #if HasDefaultConstructorArgument } }
: base ( { { DefaultConstructorArgument } } ) { { #n ewline } }
{ { / if } }يتوفر واجهة مستخدم بسيطة للمولد في Github ، مما يساعدك على إنشاء regex لتصفية الجداول الخاصة بك.
للحصول على تسليط الضوء على بناء الجملة الكامل و intellisense عند تحرير ملفات TT ، أستخدم Fortea Plugin Resharper. لا أستطيع أن أتخيل تحرير ملفات TT بدونها.
لا حاجة لتحرير ملف EF.Reverse.POCO.v3.ttinclude مباشرة حيث يتم إنشاء هذا الملف من مشروع C#. يتضمن هذا المستودع ملف buildtt الذي ينشئ EF.Reverse.POCO.v3.ttinclude من مشروع Generator c#.
احصل على قراءة [https://github.com/blog/1943-how-to-write-the-perfect-pull-request.
متطلباتي بسيطة:
EF.Reverse.POCO.v3.ttinclude . يتضمن هذا المستودع مشروع BuildTT الذي ينشئ EF.Reverse.POCO.v3.ttinclude من مشروع Generator C#.التحيات ، سيمون هيوز